博弈什么的真是弱啊。。虽然这题根本用不到博弈的知识。。但看着这类问题就懵逼。
记得sxb是打表找规律过的。。
题解是一个叫做齐肯多夫定理的东西。。可以百度一下qwq
#include<iostream>
#include<cstdio>
using namespace std;
long long n;
int cnt;
long long f[100];
int main()
{
scanf("%lld",&n);
f[cnt]=f[++cnt]=1;
while (f[cnt]<n)
f[++cnt]=f[cnt-1]+f[cnt-2];
if (f[cnt]==n) cout << n << endl;
else
{
while (n)
{
while (f[cnt]>n) cnt--;
if (f[cnt]==n) {cout << n << endl; break;}
n-=f[cnt];
}
}
return 0;
}
本文介绍了一种利用齐ken多夫定理解决特定斐波那契数列问题的方法,并给出了C++实现代码。通过寻找规律并运用此定理,能够有效地处理与斐波那契数列相关的计算问题。
946

被折叠的 条评论
为什么被折叠?



