题目描述:
一天一只顽猴想要从山脚爬到山顶
途中经过一个有n个台阶的阶梯,但是这个猴子有个习惯,每一次只跳1步或3步
试问?猴子通过这个阶梯有多少种不同的跳跃方式
输入描述
输入只有一个这个数n 0 < n < 50
此阶梯有多个台阶
输出描述
有多少种跳跃方式
示例一
输入
50
输出
122106097
示例二
输入
3
输出
2
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
#include<iostream>
#include<stdlib.h>
#include<stack>
#include<vector>
#include<stdio.h>
#include<string>
using namespace std;
#if 1
int monkey_Fun(int step)
{
if (step == 0)
{
return 1;
}
if (step == 1) {
return 1;
}
if (step == 2) {
return 1;
}
return monkey_Fun(step - 1) + monkey_Fun(step - 3);
}
int main()
{
int num;
cin >> num;
int res=monkey_Fun(num);
cout << res << endl;
return 0;
}