P0661

[Beijing wc2012]最多的方案

[Beijing wc2012]最多的方案

定义斐波那契数列为 F1=1F_1=1,F2=2F_2=2,且对于 i≥3i\ge 3,有 Fi=Fi−1+Fi−2F_i=F_{i-1}+F_{i-2}。数列中的每一项都称为斐波那契数。

给定一个正整数 NN,可以将其表示为若干个互不相同的斐波那契数之和。请计算共有多少种不同的表示方案。

输入格式

输入仅一行,包含一个正整数 NN。

输出格式

输出一个整数,表示不同方案的数量。

样例输入

16

样例输出

4

样例解释

1616 共有以下 44 种表示方案:

16=3+1316=3+13 16=3+5+816=3+5+8 16=1+2+1316=1+2+13 16=1+2+5+816=1+2+5+8

数据范围

  • 对于 30%30\% 的数据,N≤256N\le 256;
  • 对于 100%100\% 的数据,N≤1018N\le 10^{18}。

来源与许可

本题为 Beijing WC 2012 试题「最多的方案」,题面与测试数据整理自 BZOJ 2660。

样例 1

输入

16

输出

4