http://202.121.199.212/JudgeOnline/problem.php?cid=1078&pid=4
分析: 递推题。
1th-》2th: 只能走1步,即1种方法;
1th-》3th: 1) 1th 直接到3th ; 2) 2th直接到3th ; 即 f(3)=f(1)+f(2);
。。。
fibonacci数列。
代码:
#include <iostream>
#include <stdio.h>
#include <string>
#include <string.h>
#include <math.h>
using namespace std;
#define MAXN 42
int f[MAXN];
void init()
{
f[1]=f[2]=1;
for(int i=3;i<=40;i++)
f[i]=f[i-1]+f[i-2];
}
int main()
{
//freopen("in.txt","r",stdin);
int t,n;
scanf("%d",&t);
init();
while(t--){
scanf("%d",&n);
printf("%d\n",f[n]);
}
return 0;
}