CF126D.Fibonacci Sums

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Fibonacci numbers have the following form:

F1=1,F_{1}=1, F2=2,F_{2}=2, Fi=Fi1+Fi2,i>2.F_{i}=F_{i-1}+F_{i-2},i>2. Let's consider some non-empty set S=s1,s2,...,skS={s_{1},s_{2},...,s_{k}} , consisting of different Fibonacci numbers. Let's find the sum of values of this set's elements:

Let's call the set SS a number nn 's decomposition into Fibonacci sum.

It's easy to see that several numbers have several decompositions into Fibonacci sum. For example, for 1313 we have 13,5+8,2+3+813,5+8,2+3+8 — three decompositions, and for 1616 : 3+13,1+2+13,3+5+8,1+2+5+83+13,1+2+13,3+5+8,1+2+5+8 — four decompositions.

By the given number nn determine the number of its possible different decompositions into Fibonacci sum.

输入格式

The first line contains an integer tt — the number of tests ( 1<=t<=1051<=t<=10^{5} ). Each of the following tt lines contains one test.

Each test is an integer nn ( 1<=n<=10181<=n<=10^{18} ).

Please do not use the %lld specificator to read or write 64-bit integers in C++. It is preferred to use the cin, cout streams or the %I64d specificator.

输出格式

For each input data test print a single number on a single line — the answer to the problem.

输入输出样例

  • 输入#1

    2
    13
    16
    

    输出#1

    3
    4
    

说明/提示

Two decompositions are different if there exists a number that is contained in the first decomposition, but is not contained in the second one. Decompositions that differ only in the order of summands are considered equal.

首页