设为首页 加入收藏

TOP

N阶楼梯上楼问题
2013-07-23 09:06:06 来源: 作者: 【 】 浏览:143
Tags:楼梯 上楼 问题

  题目描述

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

  输入

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

  输出

  可能有多组测试数据,对于每组数据,

  输出当楼梯阶数是N时的上楼方式个数。

  样例输入

  6

  样例输出

  13

  提示 [+]

  *** 提示已隐藏,点击上方 [+] 可显示 ***

  来源

  2008年华中科技大学计算机研究生保研机试真题

  [cpp]

  /*********************************

  * 日期:2013-2-21

  * 作者:SJF0115

  * 题号: N阶楼梯上楼问题

  * 结果:AC

  * 总结:超出int范围

  **********************************/

  #include

  #include

  #include

  long long int array[91];

  int Step(){

  array[0] = 0;

  array = 1;

  array = 2;

  for(int i = 3;i < 91;i++){

  array[i] = array[i-1] + array[i-2];

  }

  return 0;

  }

  int main()

  {

  int n;

  Step();

  while(scanf("%d",&n) != EOF){

  printf("%lld\n",array[n]);

  }

  return 0;

  }

  /*********************************

  * 日期:2013-2-21

  * 作者:SJF0115

  * 题号: 天勤OJ 题目1156: N阶楼梯上楼问题

  * 结果:AC

  * 总结:超出int范围

  **********************************/

  #include

  #include

  #include

  long long int array[91];

  int Step(){

  array[0] = 0;

  array = 1;

  array = 2;

  for(int i = 3;i < 91;i++){

  array[i] = array[i-1] + array[i-2];

  }

  return 0;

  }

  int main()

  {

  int n;

  Step();

  while(scanf("%d",&n) != EOF){

  printf("%lld\n",array[n]);

  }

  return 0;

  }

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇给n m的最大值最小的值 下一篇算法设计:约瑟夫环

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: