九度OJ1205题-递归求解问题

题目1205:N阶楼梯上楼问题

时间限制:1 秒

内存限制:128 兆

特殊判题:

提交:5887

解决:2446

题目描述:

N阶楼梯上楼问题:一次可以走两阶或一阶,问有多少种上楼方式。(要求采用非递归)

输入:

输入包括一个整数N,(1<=N<90)。

输出:

可能有多组测试数据,对于每组数据,
输出当楼梯阶数是N时的上楼方式个数。

样例输入:
4
样例输出:
5
来源:
2008年华中科技大学计算机保研机试真题
 1 #include <iostream>
 2 #include <stdio.h>
 3 #include <string>
 4 #include <map>
 5 
 6 using namespace std;
 7 
 8 int main()    {
 9     long long N[91];
10     N[1] = 1;    N[2] = 2;
11     int i = 0;
12     for(i = 3; i < 91; i++)    {
13         N[i] = N[i-1] + N[i-2];
14     }
15     int num;
16 
17     while(scanf("%d", &num) != EOF){
18         printf("%lld\n", N[num]);
19     }
20     return 0;
21 }
22             

 

这里主要是解题思想比较重要

还有一个坑是long long是C99的,不是C90的,所以VC++里面不能使用

下载了DEV才行

希望到时候不是用VC

posted on 2017-06-10 16:16  Oliver-cs  阅读(262)  评论(0编辑  收藏  举报

导航