duyuxiang @ 2022-03-05 22:01:42
#include <bits/stdc++.h>
using namespace std;
//f(n)=f(n-1)+f(n-2)
long long f[72]={0,1,2,3,5 };
int main()
{
int n;
for(int i=5;i<71;i++)
{
f[i]=f[i-1]+f[i-2];
}
while(cin>>n)
{
if(n==0)
break;
cout<<f[n]<<endl;
}
return 0;
}
by Dr_Gilbert @ 2022-03-05 22:05:39
@duyuxiang
- 对于
100\% 的数据,1\le N \le 5000 。
by duyuxiang @ 2022-03-05 22:11:08
@Dr_Gilbert 我把一本通的数楼梯改了改粘过来了
by duyuxiang @ 2022-03-05 22:12:43
1190:上台阶
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 39296 通过数: 12325
【题目描述】
楼梯有n(71>n>0)阶台阶,上楼时可以一步上1阶,也可以一步上2阶,也可以一步上3阶,编程计算共有多少种不同的走法。
【输入】
输入的每一行包括一组测试数据,即为台阶数n。最后一行为0,表示测试结束。
【输出】
每一行输出对应一行输入的结果,即为走法的数目。
【输入样例】
1
2
3
4
0
【输出样例】
1
2
4
7
by Dr_Gilbert @ 2022-03-05 22:17:54
@duyuxiang 洛谷上的题数据范围更大 需写高精
by duyuxiang @ 2022-03-05 22:41:45
@Dr_Gilbert
高精我没好好学…………
(祝我的老师老师不要看到此消息)