题目描述

程序员是善于思考的,有一天他在爬楼梯的时候想出一个问题。
  楼梯有 n 级。每次你只能爬 1 级或者 3 级,那么你有多少种方法爬到楼梯的顶部?
  开始的时候在0级楼梯,顶级在第n级。

输入格式

一行,一个n, 2<=n<=20。

输出格式

一行,输出一个整数,表示爬到n级的方案数。

样例输入

3

样例输出

2

提示

零基础同学可以先学习视频课程,包含C/C++、Python、百练、蓝桥杯辅导、算法数据结构等课程,提供视频讲解以及配套习题,还有老师答疑,点击这里了解课程详情

比赛公告

递归函数的构建及其应用

1.概念:函数在执行过程中对自己的调用称为函数的递归调用。

2.一个问题采用递归方法来解决时必须符合以下条件:

(1)可将一个问题转化为具有同样解法的规模较小的问题;

(2)必须有明确的结束条件。

3.在使用递归方法解决问题时,需要分成两个步骤:

(1)递归的边界条件。也就是描述问题的最简单情况,它本身不需要递归的定义,只需给出符合什么样的条件程序中止递归及中止递归时的返回值。

(2)寻找问题的规律。将问题转换为更简单的相同问题,然后向着递归边界条件的方向递归。即递归的构建。