1190:上台阶 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 59792 通过数: 20101 【题目描述】 楼梯有n(71>n>0)阶台阶,上楼时可以一步上1阶,也可以一步上2阶,也可以一步上3阶,编程计算共有多少种不同的走法。 【输入】 输入的每一行包括一组测试数据,即为台阶数n。最后一行为0,表示测试结束。 【输出】 每一行输出对应一行输入的结果,即为走法的数目。 【输入样例】 1 2 3 4 0 【输出样例】 1 2 4 7 c++代码
时间: 2024-03-17 15:45:42 浏览: 101
```c++
#include <iostream>
using namespace std;
int main() {
int n;
int f[72]; // f 数组用于存储不同走法数目
f[1] = 1;
f[2] = 2;
f[3] = 4;
for (int i = 4; i <= 71; i++) { // i 最大为 71,因为题目中规定 n 在此范围内
f[i] = f[i-1] + f[i-2] + f[i-3];
}
while (cin >> n && n != 0) {
cout << f[n] << endl;
}
return 0;
}
```
阅读全文