Pagini recente » Cod sursa (job #816172) | Cod sursa (job #2863534) | Cod sursa (job #1426798) | Cod sursa (job #109908) | Cod sursa (job #327524)
Cod sursa(job #327524)
#include <stdio.h>
#include <string.h>
#define MAX 71+12
#define A "Nargy"
#define B "Fumeanu"
int def[MAX*5];
int sg[MAX+2];
long t,i,n,sum,nr1,x;
void precal(){
int i,j;
sg[0]=0;
for(i=1; i<=MAX;++i){
memset(def,0,sizeof(def));
for(j=1;j<=i;++j) // cand despart cu o popica
def[sg[j-1]^sg[i-j]]++;
for(j=1;j<i;++j) // cand despart cu 2 popice
def[sg[j-1]^sg[i-j-1]]++;
int x=0;
while(def[x]) ++x;
sg[i]=x;
}
}
int main(){
freopen("bowling.in","r",stdin);
freopen("bowling.out","w",stdout);
precal();
scanf("%d",&t);
for(; t; --t){
scanf("%ld",&n);
sum=0; nr1=0;
for(i=1;i<=n;++i){
scanf("%d",&x);
if(x) nr1++;
else
if(nr1){
if(nr1<=71) sum ^= sg[nr1];
else{
nr1-=71;
nr1%=12;
if(nr1==0) nr1=12;
sum ^= sg[71+nr1];
}
nr1=0;
}
}
if(nr1)
if(nr1<=71) sum ^= sg[nr1];
else{
nr1-=71;
nr1%=12;
if(nr1==0) nr1=12;
sum ^= sg[71+nr1];
}
if(sum==0) printf("%s\n",B); else printf("%s\n",A);
}
fclose(stdin); fclose(stdout);
return 0;
}