Fibonacci数列----网易2017内推笔试编程题合集(二)

原创 2016年08月28日 21:53:59

[编程题] Fibonacci数列
Fibonacci数列是这样定义的:
F[0] = 0
F[1] = 1
for each i ≥ 2: F[i] = F[i-1] + F[i-2]
因此,Fibonacci数列就形如:0, 1, 1, 2, 3, 5, 8, 13, ...,在Fibonacci数列中的数我们称为Fibonacci数。给你一个N,你想让其变为一个Fibonacci数,每一步你可以把当前数字X变为X-1或者X+1,现在给你一个数N求最少需要多少步可以变为Fibonacci数。 
输入描述:
输入为一个正整数N(1 ≤ N ≤ 1,000,000)


输出描述:
输出一个最小的步数变为Fibonacci数"

输入例子:
15

输出例子:
2

#include <iostream>
#include <vector>

using namespace::std;

int main() {
	int n;

	while (cin >> n) {
		if (n < 0) break;
		vector<int> f;
		f.push_back(0);
		f.push_back(1);
		int index = 2;
		while (f.back() < n) {
			f.push_back(f[index - 1] + f[index - 2]);
			++index;
		}
		int forward = f.back() - n;
		f.pop_back();
		int backward = n - f.back();
		if (forward > backward) cout << backward;
		else cout << forward;
	}

	return 0;
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

【在线笔试题解题报告系列】网易2017校招内推笔试之编程题【持续更新】

网易今年把内推笔试放在牛客网上办,然后出了一批编程题。 题目在: http://www.nowcoder.com/test/2252286/summary http://www.nowcoder.c...
  • fcxxzux
  • fcxxzux
  • 2016年08月07日 00:29
  • 10467

网易2017春招实习生笔试编程题集合(C++方向)

挺早之前做好一直想写一篇博客分享一下,但是后来给忘了…C++方向一共十二道编程题,可能和别的方向有一些出入。题目总体的难度不大,有些题有些小坑,适合进阶者练练手。 代码都扔在Github了 -> ...
  • cqk0100
  • cqk0100
  • 2017年06月17日 10:35
  • 611

网易2017内推笔试编程题(合集)

水平有限
  • dreamerleague
  • dreamerleague
  • 2017年01月10日 17:58
  • 201

2016网易内推笔试编程题合集(一)

本文章收录了2016年暑期网易内推笔试编程题合集(一),共八题,题目来源于牛客网。...
  • jhgkjhg_ugtdk77
  • jhgkjhg_ugtdk77
  • 2016年08月12日 16:54
  • 8990

网易2017内推笔试编程题合集(二)-幸运袋子

题目: 这个题的基本思路是利用树的深度遍历(dfs)和剪枝操作,下面我们来看看第一版代码: #include #include #include #include #include #in...
  • caoyan_12727
  • caoyan_12727
  • 2016年09月18日 09:30
  • 768

网易互娱2017实习生招聘在线笔试第一场题目解析

注意:由于题目目前还没有加入到题库,所以本人给出的代码并不能保证AC,但是对于所给的测试用例和解题基本思路是正确的。 题目1 : 电子数字 时间限制:10000ms 单点时限:1000m...
  • qq_32400847
  • qq_32400847
  • 2016年03月23日 19:55
  • 1492

分苹果----网易2017内推笔试编程题合集(一)

[编程题] 分苹果 n 只奶牛坐在一排,每个奶牛拥有 ai 个苹果,现在你要在它们之间转移苹果,使得最后所有奶牛拥有的苹果数都相同,每一次,你只能从一只奶牛身上拿走恰好两个苹果到另一个奶牛上...
  • chengonghao
  • chengonghao
  • 2016年08月26日 21:24
  • 468

【牛客网】网易2017内推笔试编程题合集(一)

1、[编程题]合唱团 有 n 个学生站成一排,每个学生有一个能力值,牛牛想从这 n 个学生中按照顺序选取 k 名学生,要求相邻两个学生的位置编号的差不超过 d,使得这 k 个学生的能力值的乘积最大,...
  • xiaoquantouer
  • xiaoquantouer
  • 2017年01月01日 18:26
  • 2799

2017年网易互联网内推笔试题-Fibonacci数列

题目如下:Fibonacci数列是这样定义的: F[0] = 0 F[1] = 1 for each i ≥ 2: F[i] = F[i-1] + F[i-2] 因此,Fibonacci数列就...
  • a1103000308
  • a1103000308
  • 2016年08月24日 17:01
  • 368

求Fibonacci数列的三种思路和算法(C++实现)

摘要:本文主要介绍求Fibonacci数列的三种思路和算法:二分递归、线性递归和动态规划法,并直观得体现了三者得运行效率的不同。...
  • icurious
  • icurious
  • 2016年11月12日 20:41
  • 1919
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Fibonacci数列----网易2017内推笔试编程题合集(二)
举报原因:
原因补充:

(最多只允许输入30个字)