第5关:猴子爬山
任务描述
本关任务:一个顽猴在一座有n级台阶的小山上爬山跳跃,猴子上山一步可跳1级,或跳3级,试求上山的n级台阶有多少种不同的爬法。
编程要求
根据提示,在右侧编辑器补充代码,求上山的n级台阶有多少种不同的爬法。用递推来求。
测试说明
平台会对你编写的代码进行测试:
测试输入:30;
预期输出:
s=58425
测试输入:40;
预期输出:
s=2670964
代码:
#include "bits/stdc++.h"
using namespace std;
int main()
{
int f[100010];
int n;
cin>>n;
f[1]=1;
f[2]=1;
f[3]=2;
for (int i=4;i<=n;i++){
f[i]+=f[i-1];
f[i]+=f[i-3];
}
cout<<f[n]<<endl;
}