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

全部评论

相关推荐

点赞 评论 收藏
分享
鼗:四级有点难绷,感觉能拿国家励志奖学金,学习能力应该蛮强的,四级确实不重要,但是拿这个卡你可是很恶心啊
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务