1 条题解
-
0
#include<bits/stdc++.h> using namespace std; // arr数组:存储第i级台阶对应的不同走法数(大小满足n≤100000的需求) int arr[100100]={}; // n:输入的楼梯台阶数 int n; int main(){ // [1] 读取输入的台阶数n cin>>n; // [2] 初始化基础情况: // 第1级台阶只有1种走法(走1级);第2级台阶有2种走法(1+1或直接走2级) arr[1]=1,arr[2]=2; // [3] 递推计算第3到第n级台阶的走法数: // 第i级的走法数 = 第i-1级的走法数(最后一步走1级) + 第i-2级的走法数(最后一步走2级) for(int i=3;i<=n;i++){ arr[i]=arr[i-1]+arr[i-2]; } // [4] 输出第n级台阶对应的不同走法数 cout<<arr[n]; return 0; }
- 1
信息
- ID
- 819
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 1
- 标签
- 递交数
- 2
- 已通过
- 1
- 上传者