小杨正在爬楼梯,需要 阶才能到达楼顶,每次可以爬 阶或 阶,求小杨有多少种不同的方法可以爬到 楼顶,横线上应填写( )。
int climbStairs(int n) {
if (n <= 2) return n;
int prev2 = 1;
int prev1 = 2;
int current = 0;
for (int i = 3; i <= n; ++i) {
________________ // 在此处填入代码
}
return current;
}
- A. 1 prev2 = prev1; 2 prev1 = current; 3 current = prev1 + prev2;
- B. 1 current = prev1 + prev2; 2 prev2 = prev1; 3 prev1 = current;
- C. 1 current = prev1 + prev2; 2 prev1 = current; 3 prev2 = prev1;
- D. 1 prev1 = current; 2 prev2 = prev1; 3 current = prev1 + prev2;
正确答案:B