ACM的zyc在研究01串,他知道某一01串的长度,但他想知道不含有“11”子串的这样的长度的01串共同拥有多少个,他希望你能帮帮他。
注:01串的长度为2时,有3种:00,01,10。
- 输入
- 第一行有一个整数n(0<n<=100),表示有n组測试数据;
随后有n行,每行有一个整数m(2<=m<=40)。表示01串的长度; - 输出
- 输出不含有“11”子串的这样的长度的01串共同拥有多少个。占一行。
- 例子输入
-
2 2 3
- 例子输出
-
3 5
-
来源
//01串 #include<iostream> #include<stdio.h> using namespace std; int a[41]; void dg(int i) { a[0]=1; a[1]=2; for(i=2;i<41;i++) a[i]=a[i-1]+a[i-2]; } int main() { int n,m; while(cin>>n) { while(n--) { cin>>m; dg(m); cout<<a[m]<<endl; } } return 0; }