-
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
1 秒
内存限制:32 兆
特殊判题:
题目描述:
-
输入:
-
输入可能包含多个测试样例,对于每个测试案例,
输入包括一个整数n(1<=n<=70)。
-
输出:
-
对应每个测试案例,
输出该青蛙跳上一个n级的台阶总共有多少种跳法。
-
样例输入:
-
5
-
样例输出:
-
8
-
-
分析:与斐波那契数列类似,注意递归初始条件即可。
-
#include <iostream> #include <cstdio> using namespace std; const int N = 71; long long int fabo[N]; void initFabo() { fabo[0] = 1; fabo[1] = 1; for (int i = 2; i < N; ++i) fabo[i] = fabo[i - 1] + fabo[i - 2]; } int main(void) { int n; initFabo(); while (scanf("%d", &n) != EOF) { printf("%lld\n", fabo[n]); } return 0; }