当前位置:   article > 正文

[C/C++]跳格子游戏 - 2019校招编程刷题_跳格子游戏棋盘,从起始点需要跳n个格子才能到结束点

跳格子游戏棋盘,从起始点需要跳n个格子才能到结束点

[C/C++]跳格子游戏 - 2019校招编程刷题

参考链接
题目描述
假设你正在玩跳格子(所有格子排成一个纵列)游戏。需要 跳完n 个格子你才能抵达终点。
每次你可以跳 1 或 2 个格子。你有多少种不同的方法可以到达终点呢?
注意:给定 n 是一个正整数。

输入描述

格子数n

输出描述

跳完n个格子到达终点的方法

输入例子1:

2

输出例子1:

2

思路

  • 列举不同n值的方法数量,就可以得到推论:
  • (1)n个格子的方法数量 = (n-1)个格子的方法数量+(n-2)个格子的方法数量 (n>2);
  • (2)当 n <=2 时, n个格子的方法数量 = n。
n123456
方法数1235813
  • 使用递归方法即可完成代码。

Just show my code


代码(c++/c)

#include<iostream>
int methods(int n){
  if(n<3){
    return n;
  }else{
    return methods(n-1) + methods(n-2);
  }
}
using namespace std;
int main(){
  int n; // 格子数
  cin >> n;
  cout<<methods(n)<<endl;
  return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

如果我的文章能帮你节约20秒,就请你为我的文章点个赞吧!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/506945?site
推荐阅读
相关标签
  

闽ICP备14008679号