时间限制: 1000 ms 内存限制: 65536 KB
提交数: 26452 通过数: 14358
树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数,求不同的走法数。
例如:楼梯一共有3级,他可以每次都走一级,或者第一次走一级,第二次走两级,也可以第一次走两级,第二次走一级,一共3种方法。
输入包含若干行,每行包含一个正整数N,代表楼梯级数,1≤N≤30。
不同的走法数,每一行输入对应一行输出。
5 8 10
8 34 89
代码:
#include
using namespace std;
int f(int x) {
int a[x + 10];
a[0] = 1;
a[1] = 1;
for (int i = 2; i <= x; i++) {
a[i] = a[i - 1] + a[i - 2];
}
return a[x];
}
int main() {
int k;
while (scanf("%d", &k) != EOF) {
cout << f(k) << endl;
}
return 0;
}