趕快加入我們來參與討論吧!
您需要 登錄 才可以下載或查看,沒有帳號?加入我們
x
本帖最後由 amoshuangyc 於 2014-8-9 22:58 編輯
這題的題目敘述並不是很清楚,舉得例子太少了(起碼對我這個沒去營隊的人來說,不知現場有沒有對這題做出說明)
「他的女兒各有 1+2 個兒子,以此類推」這句話是說:
勇者的第二個兒子有兩個女兒,兩個女兒都有 3 個兒子(1+2 = 3)。
勇者的第三個兒子有三個女兒,三個女兒都有 6 個兒子(1+2+3 = 6)。
勇者的第四個兒子有四個女兒,四個女兒都有 10 個兒子(1+2+3+4 = 10)。
…
勇者的第 i 個兒子有 i 個女兒,i 個女兒都有 (1+i)*i/2 個兒子(1+2+3+...+i)。
對勇者的第 i 個兒子及其後代共需要 1(兒子)+ i (孫女)+ (1+i)*i / 2 * i(曾孫) 個記念品。
示意圖如下:
勇者:
第一個兒子:
孫女兒:
曾孫。
第二個兒子:
孫女兒
曾孫
曾孫
曾孫。
孫女兒
曾孫
曾孫
曾孫。
第三個兒子:
孫女兒
曾孫
曾孫
曾孫
曾孫
曾孫
曾孫。
孫女兒
曾孫
曾孫
曾孫
曾孫
曾孫
曾孫。
孫女兒
曾孫
曾孫
曾孫
曾孫
曾孫
曾孫。
…
我原本以為是這樣:第二個兒子有兩個女兒,一個 1 個兒子,另一個 2 個兒子;第三個兒子有三個女兒,一個 1 個兒子,一個 2 個,一個 3 個……
AC Code:
[C++] 純文本查看 復制代碼
#include <iostream>
using namespace std;
int main() {
int sum = 0;
for (int i=1; i<=30; i++) {
sum += 1;
sum += i;
sum += (1+i) * i / 2 * i;
}
cout << sum << endl;
return 0;
}
|