题目描述
一个楼梯共有 n
级台阶,每次可以走一级或者两级,问从第 0
级台阶走到第 n
级台阶一共有多少种方案。
输入格式
共一行,包含一个整数 n
。
输出格式
共一行,包含一个整数,表示方案数。
数据范围
1≤n≤15
样例
输入样例:
5
输出样例:
8
算法1
递归
$n=1$时,方案数为1,$n=2$时,方案数为2,其余都是$n-1$和$n-2$的方案数总和
C++ 代码
#include <iostream>
using namespace std;
int n;//n级台阶
int total;//方案总数
int method(int n){
if(n == 1)
return total = 1;
if(n == 2)
return total = 2;
return total = method(n-1) + method(n-2);
}
int main(){
scanf("%d", &n);
printf("%d", method(n));
}