【题意】:Fibonacci 序列,不过n很大,用long long也会溢出,所以采用直接在num[i-2]+num[i-1]的时候%3,而不是所有加起来才再%3。同蓝桥杯那个以题。
#include <iostream>
#include <iomanip>
#include <cstring>
#include <cstdlib>
#include <cstdio>
using namespace std;
#define MAX 1000000+2
int num[MAX];
int main()
{
int n = 0;
while (cin >> n)
{
memset(num, 0, sizeof(num));
num[0] = 7, num[1] = 11;
int i = 0;
for (i = 2; i <= n; i++)
{
num[i] = (num[i-2]+num[i-1])%3;
}
if (!num[n])
cout << "yes" << endl;
else
cout << "no" << endl;
}
return 0;
}