假如青蛙要跳N个台阶,因为他跳台阶能力有限,假如青蛙每次可以跳一个或者两个台阶,那么青蛙可以有多少种路径选择呢?
很容易想象
当有一个台阶,n=1时,有1种跳法
n=2时,有2种跳法
n=3时,有3种跳法
n=4时,有5种跳法
设一个函数为fid(x)
则可以把这个问题转化为一个函数
fid(n)=1,n=1
fid(n)=2,n=2
fid(n)=fid(n-1)+fid(n-2)
用VS2022下编程
#include <stdio.h>
int fid(int n)
{
if(n<=2)
return n;
else
return fid(n-1)+fid(n–2);
}
int main()
{
int n=0;
scanf("%d",&n);
int a=fid(n);
printf("%d",a);
}