题解 | #小乐乐走台阶#
小乐乐走台阶
https://www.nowcoder.com/practice/ebf04de0e02c486099d78b7c3aaec255
#include <stdio.h> //n是n阶台阶 // 根据题意,小乐乐可以选择走一步或者走两步,则走到n步的方法数之和有两种情况 // 1、先按照某种方法走到第n-2阶,最后一次直接跨两阶 // 2、先按照某种方法走到第n-1阶,最后一次只跨一阶 // 也就是,最后到达n步的方法只有这两种,要么是跨一阶到达,要么是跨两阶到达 // 所以,假设走到第n阶所用的方法总数为f(n),则f(n)=f(n-2)+f(n-1); // 搞清楚这个接下来解题就很简单了,可以用递归和迭代都可以 int FIB(int n) { if(n<=2) { return n; } else { return FIB(n-1)+FIB(n-2); } } int main() { int n=0; scanf("%d",&n); int ret=FIB(n); printf("%d",ret); return 0; } //类似斐波那契数列