题目描述
N阶楼梯上楼问题:一次可以走两阶或一阶,问有多少种上楼方式。(要求采用非递归)
输入描述:
输入包括一个整数N,(1<=N<90)。
输出描述:
可能有多组测试数据,对于每组数据, 输出当楼梯阶数是N时的上楼方式个数。
输入例子:
4
输出例子:
5
AC code:
#include<iostream>
#include<algorithm>
#include<stdio.h>
#include<map>
#include<math.h>
#include<string.h>
#include<queue>
#include<vector>
#include<set>
#define LL long long
#define exp 1e-9
#define MAXN 1000010
using namespace std;
LL f[99];
void init()//打表
{
int i;
f[1]=1;
f[2]=2;
for(i=3;i<90;i++)
{
f[i]=f[i-1]+f[i-2];
}
}
int main()
{
// freopen("D:\\in.txt","r",stdin);
int N;
init();
while(scanf("%d",&N)!=EOF)
{
printf("%lld\n",f[N]);
}
return 0;
}