【计蒜客】16爬楼梯

题目:爬楼梯

假设你现在正在爬楼梯,楼梯有n级。每次你只能爬1级或者2级,那么你有多少种方法爬到楼梯的顶部?
格式:
   第一行输入一个数n(n<=50),代表楼梯的级数。
   接下来一行输出你的方法总数。
样例1
输入:
5
输出:
8

假如有一层楼梯,那就只有一种方案。两层楼梯2种。3层楼梯时,先走一步,剩下两层我们算过了就是2;先走2步,剩下一层我们也算过了就是1!于是,3层有3种,4层有5种,5层有8种...
---斐波那契数列

#include
#define maxn 55
int main(){
	int n;
	scanf("%d",&n);
	int dp[maxn];
	dp[0]=0;//0
	dp[1]=1;//1层台阶
	dp[2]=2;//2层台阶①1+1 ②2
	for(int i=3;i<=n;i++){
		dp[i]=dp[i-1]+dp[i-2];
	}
	printf("%d\n",dp[n]);
	return 0; 
} 


你可能感兴趣的:(动态规划,计蒜客)