题目描述:
某人上台阶,一步可以走一个台阶,也可以走两个台阶,还可以走三个台阶。问他走到第n个台阶,共有多少种不同的走法。
输入格式:
一个数
输出格式:
一个数
样例输入:
5
样例输出:
13
提示:
n<=100
递推算法。
时间限制: 1000ms
空间限制: 128MB
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
int a[101]={1,2,4},n;
cin>>n;
for(int i=3;i<n;i++){
a[i]=a[i-1]+a[i-2]+a[i-3];
}
cout<<a[n-1];
return 0;
}