题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
输入
多组测试样例。每组测试样例包含一个整数n。(1<=n<=100)
输出
每组测试样例输出一行,表示青蛙跳上n级台阶的跳法数量.
所得到的结果模1000000007
样例输入
3
4
样例输出
3
5
代码:
#include <bits/stdc++.h>
using namespace std;
int n=0;
int dp[100];
const long m=1000000007;
int main()
{
while(~scanf("%d",&n))
{
dp[0]=0;
dp[1]=1;
dp[2]=2;
for(int i=3;i<=n;i++)
{
dp[i]=dp[i-1]%m+dp[i-2]%m;
}
dp[n]=dp[n]%m;
cout<<dp[n]<<'\n';
}
}