任务描述
本关任务:一只小青蛙,每次跳台阶,他可以一下跳一个台阶,或者两个台阶,问假设有n个台阶,这只青蛙一共有多种跳的方法。
题目分析
假设小青蛙最后站在第n阶梯,那么它最后一次是怎么跳上来的呢?可以是跳一级上来,也可以是跳两级上来。假设f(n)是小青蛙跳到n个台阶的方法数。
编程要求
根据提示,在右侧编辑器补充代码,计算n个台阶共有多少总跳法。
测试说明
平台会对你编写的代码进行测试,需要输入的台阶数是大于等于1的整数,如果小于等于0,则返回-1。
测试输入:2
预期输出:2
测试输入:5
预期输出:8
#include<iostream>
using namespace std;
int frog(int n)
{
if(n<=0)
return -1;
if(n==1)
return 1;
if(n==2)
return 2;
else
return frog(n-2)+frog(n-1);
}
int main()
{
int n, m;
scanf("%d", &n);
m=frog(n);
printf("%d", m);
return 0;
}