题解 | #N阶楼梯上楼问题#

N阶楼梯上楼问题

https://www.nowcoder.com/practice/c978e3375b404d598f1808e4f89ac551

不同顺序也算一种,eg:1,1,2;1,2,1;2,1,1;算三种。

创建状态数组dp[N],存储N阶楼梯上楼的方案,其中下标0舍弃,方便使用。

#include <iostream>
using namespace std;

#define N 90

int main(){
	int dp[N]={0,1,2,0};	//第一阶台阶方案是1,第二阶台阶方案数2
	int n;
	while(cin >> n && n>=1){
		int i;
		for (i = 3;i<=n;i++){	//从第三节台阶开始算
			dp[i] = dp[i-1]+dp[i-2];
		}
		
		cout <<dp[n]<<endl;
	}
}

全部评论

相关推荐

牛客93169152...:可以发邮件,我停了三天没收到链接,发邮件问了一下,十分钟后就有了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
03-20 12:46
瘦嘟嘟右卫门:百度文库网盘的暑期也没约面吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务