题解 | #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;
	}
}

全部评论

相关推荐

07-02 13:52
门头沟学院 Java
点赞 评论 收藏
分享
投递长鑫存储等公司8个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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