牛客网 2018年全国多校算法寒假训练营练习比赛(第二场) H.了断局-递推

 

H.了断局
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld

题目描述

既然是了断局了,大家就随便玩玩数字呗。
已知一个数列前10项分别是 
{0, 1, 1, 2, 4, 7, 13, 24, 44, 81}
小G不满足呀:我要更多的数!!!不给就不让你们玩了。
小G会问你第n项是什么数字,请回答这个顽皮的孩子吧。

输入描述:

多组数据输入输出;
第一行输入一个整数n(1<=n<=50)

输出描述:

输出数列中的第n个数。
示例1

输入

1
2
3

输出

0
1
1

 

 

这个题自己看一下给的那些数,很容易发现就是递推。

 


代码:

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<algorithm>
 4 #include<cstring>
 5 #include<cstdlib>
 6 #include<string.h>
 7 #include<set>
 8 #include<vector>
 9 #include<queue>
10 #include<stack>
11 #include<map>
12 #include<cmath>
13 using namespace std;
14 typedef long long ll;
15 const int inf=0x3f3f3f3f;
16 double PI=acos(-1.0);
17 const int maxn=1e5+100;
18 ll a[maxn];
19 int main(){
20     a[0]=0;a[1]=0;a[2]=1;a[3]=1;
21     for(int i=4;i<60;i++){
22         a[i]=a[i-1]+a[i-2]+a[i-3];
23     }
24     int n;
25     while(~scanf("%d",&n)){
26         printf("%lld\n",a[n]);
27     }
28     return 0;
29 }

 

 

 

 

剩下的题目不想补了。最近心态有点崩。要好好看看算法,看书和博客,算法还是王道,不能一直写题,要不然不会的还是不会。只写会的题还是一直菜。

我爱学习,学习使我快乐(啊呸)

 

posted @ 2018-01-29 13:49  ZERO-  阅读(193)  评论(0编辑  收藏  举报