http://acm.hdu.edu.cn/showproblem.php?pid=2046
这是一个简单的斐波纳契数列的转义。
和那个上台阶,一次性只能上1个或者2个,求到达第n个台阶的种数是一样的。
#include <iostream>
using namespace std;
#define MAX 53
__int64 f[MAX];
int main(){
int n,i;
f[1]=1;
f[2]=2;
for (i=3;i<=50;i++)
f[i]=f[i-1]+f[i-2];
while (scanf("%d",&n)!=EOF){
printf("%I64d\n",f[n]);
}
return 0;
}