Pagini recente » Cod sursa (job #3166693) | Cod sursa (job #2802623) | Cod sursa (job #646706) | Cod sursa (job #799394) | Cod sursa (job #1779201)
#include <iostream>
#include <cstdio>
#include <cstring>
#define MAXN 50050
#define MAXS 210
using namespace std;
int n, a[MAXN];
int sg[MAXS], viz[MAXS];
void prepare()
{
sg[1] = 1;
for (int i = 1; i < MAXS; i++) {
memset(viz, 0, sizeof viz);
for (int j = 0; j < i; j++) {
viz[sg[j] ^ sg[i-j-1]] = 1;
if (i-j-2 >= 0)
viz[sg[j] ^ sg[i-j-2]] = 1;
}
for (int j = 0; j < MAXS; j++)
if (!viz[j]) {
sg[i] = j;
break;
}
//cout << sg[i] << ",";
}
}
void solve()
{
int run = 0;
int rez = 0;
for (int i = 1; i <= n; i++) {
if (a[i]) run++;
if ((a[i] == 0 || i == n) && run){
int sgin = (run < 72 ? run : run % 12 + 72);
rez ^= sg[sgin];
run = 0;
}
}
if (rez)
printf("Nargy\n");
else
printf("Fumeanu\n");
}
int main()
{
freopen("bowling.in", "r", stdin);
freopen("bowling.out", "w", stdout);
prepare();
int t;
scanf("%d", &t);
while (t--) {
scanf("%d", &n);
for (int i = 1; i <= n; i++)
scanf("%d", &a[i]);
solve();
}
return 0;
}