Description

一个猴子在一座不超过30级的小山上爬山跳跃,猴子上山一步可跳1级或跳3级,试求上山有多少种不同的爬法

Input

多组测试数据,每组输入1个整数n,表示山的台阶数

Output

对于输入的整数n求出多少种爬法

Sample Input

30

Sample Output

58425

HINT

大意:经典DFS

#include<cstdio>
int n, tot;
void  dfs(int sum){
     if(sum ==  n){
         tot ++;
         return;
     }
     if(sum > n )
         return ;
     dfs(sum + 1);
     dfs(sum + 3);
}


int main()
{
    while(~scanf("%d",&n)){
         tot  = 0;
        dfs(0);
        printf("%d\n",tot);
    }
    return 0;
}
View Code

相关文章:

  • 2021-06-13
  • 2022-03-09
  • 2022-12-23
  • 2022-12-23
  • 2021-04-10
  • 2021-06-19
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-01-30
  • 2022-12-23
  • 2022-12-23
  • 2021-11-24
相关资源
相似解决方案