题目描述:

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。斐波那契数列的定义如下:

输入:

输入可能包含多个测试样例,对于每个测试案例,

输入包括一个整数n(1<=n<=70)。

输出:

对应每个测试案例,

输出第n项斐波那契数列的值。

样例输入:

	3

样例输出:

	2

【解题思路】本题应该是非常经典的递推/递归问题了,而且递推式子题目也已经给出。由此,可以设置简单的递归函数,其终止条件是调用参数为0或者1的时候。

一点点小技巧:由于题目有多个测试案例,每个案例都需要寻找对应的斐波拉契数。所以在程序的开始可以将所有的斐波拉契数存于一个vector中,后面只需要查询即可。防止最后第70个斐波拉契数较大,采用long数据类型存储。

AC code:

#include <cstdio>
#include <vector>
using namespace std;
int main()
{
int n,siz;
vector<long> vec;
vec.reserve(72);
vec.push_back(0);
vec.push_back(1);
while(scanf("%d",&n)!=EOF)
{
if(n>=vec.size())
{
siz=vec.size();
for(int i=siz;i<=n;++i)
vec.push_back(vec[i-1]+vec[i-2]);
}
printf("%ld\n",vec[n]);
}
return 0;
}
/**************************************************************
Problem: 1387
User: huo_yao
Language: C++
Result: Accepted
Time:0 ms
Memory:1052 kb
****************************************************************/

题目链接:http://ac.jobdu.com/problem.php?pid=1387

最新文章

  1. 【知识必备】RxJava+Retrofit二次封装最佳结合体验,打造懒人封装框架~
  2. ffmpeg用法及如何使用fluent-ffmpeg
  3. LinqToDB 源码分析——DataContext类
  4. 安装minicom
  5. llinux 查看自己的公网ip
  6. Ruby操作VBA的注意事项和技巧(1):乱码、获取VBA活动和非活动窗口的名称与路径、文件路径的智能拼接与截取(写入日期)
  7. DB2 insert into 三种写法
  8. spring框架源码编译
  9. OOX 面向对象X
  10. MVC应用程序请求密码的功能1
  11. 通过在xml布局文件中设置android:onClick=&quot;&quot;来实现组件单击事件
  12. jmeter系列-------注意事项
  13. springboot学习(一)——helloworld
  14. MySQL实现阶段累加的sql写法 ,eq:统计余额
  15. poj3080 Blue Jeans【KMP】【暴力】
  16. win7使用命令
  17. 【bzoj3570】 Cqoi2014—通配符匹配
  18. oracle Bug 4287115(ora-12083)
  19. echarts报表
  20. CF1064 E - Dwarves, Hats and Extrasensory Abilities

热门文章

  1. vue项目打包后运行报错400如何解决
  2. 淘淘商城之httpclient
  3. Redis的安装和启动(一)
  4. Fedora以root用户自动登陆
  5. DataGrid 獲取 制定 row Col 單元格
  6. Java生鲜电商平台-小程序或者APP优惠券的设计与源码实战
  7. Newtonsoft.Json小记
  8. jmeter录制浏览器Https请求
  9. jQuery学习(三)
  10. office 2016