01串
时间限制:1000 ms | 内存限制:65535 KB
难度:2
- 描述
-
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>
02.
using
namespace
std;
03.
int
main()
04.
{
05.
int
num[41][2],i;
06.
num[2][0]=2;
//长为2,结尾为0
07.
num[2][1]=1;
//长为2,结尾为1
08.
for
(i=3;i<41;i++)
09.
{
10.
num[i][0]=num[i-1][1]+num[i-1][0];
11.
num[i][1]=num[i-1][0];
12.
}
13.
int
n,m;
14.
cin>>n;
15.
while
(n--)
16.
{
17.
int
m;
18.
cin>>m;
19.
cout<<num[m][0]+num[m][1]<<endl;
20.
}
21.
return
0;
22.
}
NYOJ-252 01串
时间: 2024-10-12 01:30:18