只考虑最后一次爬1阶还是爬2阶楼梯,那么f(x)=f(x−1)+f(x−2)。
同时,可以验证前五位的输入和输出:
- 输入1,返回1
- 输入2,返回2
- 输入3,返回3
- 输入4,返回5
- 输入5,返回8
C语言
int climbStairs(int n) { int p = 0, q = 0, r = 1; for (int i = 1; i <= n; ++i) { p = q; q = r; r = p + q; } return r; }
2024-03-27 13:37:58
只考虑最后一次爬1阶还是爬2阶楼梯,那么f(x)=f(x−1)+f(x−2)。
同时,可以验证前五位的输入和输出:
int climbStairs(int n) { int p = 0, q = 0, r = 1; for (int i = 1; i <= n; ++i) { p = q; q = r; r = p + q; } return r; }