2222: 找数字

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:50 解决:6

题目描述

小X同学最近迷上了斐波那契数列,斐波那契数列F(n)定义为:
当n=1或者n=2时,F(n)=1;
当n>2时,F(n)=F(n-1)+F(n-2);

小X同学会进行 T次询问,每次询问给定一个数a[i],他想让你找到斐波那契数列中距离a[i]最近的一项,即求一个正整数 x 使得在满足 |F(x) - a[i]|最小的基础上 x 尽量小。

输入

第一行一个正整数 T,表示询问的次数。

接下来的 T 行,每行一个正整数a[i] ,表示询问的数。

输出

T 行,每行一个正整数 x,表示你的答案。

样例输入 复制

4
1
6
7
25

样例输出 复制

1
5
6
8

提示

数据范围:1≤T≤100。
                1≤a[i]≤10的18次方
斐波那契数列的前90项均满足小于10的18次方


样例解释:F(1)到F(9)分别为 1,1,2,3,5,8,13,21,34。而离1最近的是F(1)和F(2),由于1更小,输出1。离6最近的是 F(5)= 5,所以输出 5。离 7最近的是 F(6)=8,故输出6。离25 最近的是 F(8) = 21,故输出8。

来源/分类