【牛客小白月赛21】NC201609 Fool Problem 题目链接

考点:数论

比赛时看到这题通过量较多,数据范围10^2020似乎不可做,又是Fool Problem

那就找规律吧qwq

斐波那契数列平方与前后项的特性中可以看到“从第二项开始,每个偶数项的平方都比前后两项之积少 1,每个奇数项的平方都比前后两项之积多 1。”

推导:(by zwlwf2)

斐波那契有通项公式:

代入 之后化简,可得结果为

妙啊!剩下的就不用我多说了

#include<iostream>
using namespace std;
char x,ch;
int main() {
    while((ch=getchar())>='0' && ch<='9') x=ch;//x是最后一个数字
    if (x=='0' || x=='2' || x=='4' || x=='6' || x=='8') cout<<1;
    else cout<<-1;
}