
class Solution {
public:
int climbStairs(int n)
{
int i,p,q;
if(n < 3)
return n;
p = 1;
q = 2;
for(i = 3;i<=n;++i)
{
q = p + q;
p = q - p;
}
return q;
}
};

这篇博客介绍了一个C++实现的算法,用于解决爬楼梯问题。代码中定义了一个名为climbStairs的函数,采用动态规划的方法,通过迭代更新两个辅助变量p和q来计算第n步的不同爬楼方式数。该算法避免了递归,提高了效率。
3420

被折叠的 条评论
为什么被折叠?



