本文主要是介绍【晴问算法】入门篇—递归—上楼,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
我打算走楼梯上楼,共有n级台阶。
我身轻如燕,所以每次都可以选择上一级台阶或者两级台阶。
问有多少种上楼的方式。
例如当n= 3时,共有三种方式上楼:
1.一级 ->一级 ->一级
2.一级 ->二级
3.二级 ->一级
输入描述
一个正整数n(1≤n≤25),表示台阶级数。
输出描述
一个正整数,表示上楼的方案数。
样例1
输入
1
输出
1
样例2
输入
2
输出
2
样例3
输入
3
输出
3
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100;int n;
int fun(int n){if( n <= 1){return 1;}else{return fun(n-1) + fun(n-2);}
}
int main(){cin >> n;printf("%d",fun(n));return 0;
}
这篇关于【晴问算法】入门篇—递归—上楼的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!