1. 程式人生 > >nyoj 260-數數小木塊 (打表)

nyoj 260-數數小木塊 (打表)

c++ alt 輸入 math 規律 problem cout gray idt

260-數數小木塊


內存限制:64MB 時間限制:3000ms 特判: No
通過數:17 提交數:24 難度:1

題目描述:

在墻角堆放著一堆完全相同的正方體小木塊,如下圖所示:

技術分享圖片

因為木塊堆得實在是太有規律了,你只要知道它的層數就可以計算所有木塊的數量了。

現在請你寫個程序 給你任一堆木塊的層數,求出這堆木塊的數量.

輸入描述:

第一行是一個整數N(N<=10)表示測試數據的組數)
 接下來的n行 每行只有一個整數 ,表示這堆小木塊的層數,

輸出描述:

對應每個輸入的層數有一個輸出,表示這堆小木塊的總數量,每個輸出占一行

樣例輸入:

2
1
5

樣例輸出:

1
35

C/C++ AC:

 1 #include <iostream>
 2
#include <algorithm> 3 #include <cstring> 4 #include <cstdio> 5 #include <cmath> 6 #include <stack> 7 #include <set> 8 #include <map> 9 #include <queue> 10 #include <climits> 11 12 using namespace std; 13 int N, n, T[200] = {0}, W[200] = {0}; 14
15 void cal_w() 16 { 17 for (int i = 1; i <= 195; ++ i) 18 { 19 T[i] = i + T[i - 1]; 20 W[i] = W[i - 1] + T[i]; 21 } 22 } 23 24 int main() 25 { 26 cal_w(); 27 cin >>N; 28 while (N --) 29 { 30 cin >>n; 31 cout <<W[n] <<endl; 32 } 33 }

nyoj 260-數數小木塊 (打表)