问题 J: algorithm-跳台阶
题目描述简单的dp问题
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
输入
多组测试样例。每组测试样例包含一个整数n。(1<=n<=100)
输出
每组测试样例输出一行,表示青蛙跳上n级台阶的跳法数量.
所得到的结果模1000000007
样例输入
3
4
样例输出
3
5
C++
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const ll M = 1000000007;
const int N = 110;
int n;
ll f[N];
int main(){
while(cin>>n){
f[1]=1;
f[2]=2;
for(int i=3;i<=n;i++){
f[i] = (f[i-1]%M+f[i-2]%M)%M;
}
cout<<f[n]%M<<endl;
}
}