Pagini recente » Cod sursa (job #1380809) | Cod sursa (job #1782933) | Cod sursa (job #2664628) | Cod sursa (job #1190041) | Cod sursa (job #2019242)
#include <fstream>
#include <iostream>
#define Nmax 50002
using namespace std;
int n,t,v[Nmax],DP[Nmax],nr,mx;
int uz[Nmax];
void add(int nr)
{
for (int i=mx+1;i<=nr;i++)
{
for (int a = 0,b = i-1;a<=b;a++,b--)
uz[DP[a]^DP[b]] = i;
int j;
for (j=0;uz[j]==i || uz[j]==i-1;j++);
DP[i] = j;
}
mx = nr;
}
int main()
{
freopen("bowling.in","r",stdin);
freopen("bowling.out","w",stdout);
cin>>t;
DP[1] = 1;
uz[0] = 1;
mx = 1;
while (t--)
{
cin>>n;
int rez = 0;
nr = 0;
for (int i=1;i<=n;i++)
{
cin>>v[i];
if (v[i]==0)
{
if (nr>mx)
add(nr);
rez ^= DP[nr];
nr = 0;
}
else
nr++;
}
if (nr>mx)
add(nr);
rez ^= DP[nr];
if (rez==0)
cout<<"Fumeanu\n";
else
cout<<"Nargy\n";
}
return 0;
}