问题描述:一个台阶共有n级,如果一次可以跳1级,也可以跳2级,求总共有多少种跳法
int ClimbStairs(int n)
{
int dp[3]={1,1};
if(n<2)
{
return 1;
}
for(int i=2;i<=n;i++)
{
dp[2]=dp[0]+dp[1];
dp[0]=dp[1];
dp[1]=dp[2];
}
return dp[2];
}
问题描述:一个台阶共有n级,如果一次可以跳1级,也可以跳2级,求总共有多少种跳法
int ClimbStairs(int n)
{
int dp[3]={1,1};
if(n<2)
{
return 1;
}
for(int i=2;i<=n;i++)
{
dp[2]=dp[0]+dp[1];
dp[0]=dp[1];
dp[1]=dp[2];
}
return dp[2];
}