神密的数列

Description

2030年,酷夏。一队考古人员来到这片山区,原因据说是发现这里可能有极其珍贵的古迹。 
遗迹的开发工作工作远比他们之前想象的复杂度得多,开发进度缓慢,眼看着时间就快来不急了。 
为了加快进度,他们打算雇佣当地的居民来帮忙。 
听闻消息过来应征的大部分是中壮年,唯独一位特殊,是位老人家,看起来已经年过半百,头发花白,带着眼镜,在人群中实在太显眼,大概是为了生计吧。 
。。。 
古迹的开发工作稳步进行,这块巨大的石碑在地底沉睡了几千年后终于又要重见光明了。 
考古学家们站在石碑边上,轻轻擦去尘土,开始解读上面的信息。 
A:“好像都是甲骨文,而且都是数字” 
B:”确实都是数字。1, 2, 4, 7, 11, 16, 22 ,。。。。。“ 
C:"这一大串数字是什么意思" 
A:”看不出规律,但是一定有重大的含义,你们看过20年前那部《神秘代码》的电影吗,我觉得很有可能跟那个一样,关乎我们地球存亡!“ 
大家都觉得A说很有道理,激动得不知道说什么话好 
 
”额。。。那个。。。“突然从身后传来声音 
纷纷回头望去,是那位老人家 
”虽然我看不懂甲骨文,但是你刚才说的那串数字不就是二阶等差数列嘛,我当年在学校的比赛出过这道题“ 
一群人愣了一下 
“好像是啊,相邻两个数的差分别为1, 2, 3, 4, 5, 。。。。” 
然后脸上纷纷由兴奋变得充满窘色 
看着老人家已经回头准备离开,大家纷纷叫住他 
”等一下先别走,能告诉我们您的名字吗“ 
”算了吧,要什么名字,叫我BMan吧”然后大步离去,头也不回

Input

输入数据的第一行为一个正整数T 
接下来有T行,每行有一个正整数n (n <= 1000)

Output

对于每一个n,请输出二阶等差数列中第n个数的值

Sample Input

4 1 2 5 8

Sample Output

1 2 11 29

HINT

数据量很小,水题,求二阶等差数列。

 1 #include <iostream>
 2 #include <cstring>
 3 #include <cstdio>
 4 #include <string>
 5 #include <algorithm>
 6 using namespace std;
 7 #define maxn 1010
 8 int a[maxn];
 9 int T, n;
10 void init(){
11     int mark = 1;
12     a[1] = 1;
13     for(int i = 2; i <= 1000; i++){
14         a[i] = a[i-1]+mark;
15         mark++;
16     }
17 }
18 int main(){
19     init();
20     scanf("%d", &T);
21     while(T--){
22         scanf("%d", &n);
23         printf("%d\n", a[n]);
24     }
25     return 0;
26 }

 

posted @ 2015-03-16 15:33  下周LGD该赢了吧  阅读(216)  评论(0编辑  收藏  举报