Pagini recente » Cod sursa (job #696957) | Cod sursa (job #1257729) | Cod sursa (job #521283) | Cod sursa (job #2099528) | Cod sursa (job #3173749)
#include <bits/stdc++.h>
#define N 507
using namespace std;
ifstream fin("bowling.in");
ofstream fout("bowling.out");
int n;
int k;
int S[104];
int g[N + 1];
char A[2][20] = { "Nargy", "Fumeanu" };
void Citire()
{
fin >> n;
}
void Rezolvare()
{
int i;
int x;
int ct = 0, XOR = 0;
for( i=1; i<=n; i++ )
{
fin >> x;
if( x == 1 ) ct++;
if( x == 0 )
{
XOR ^= ct;
//cout << ct << " ";
ct = 0;
}
}
//cout << ct << "\n";
XOR ^= ct;
fout << ( XOR ? A[0] : A[1] ) << "\n";
}
int f[30000];
void Precalculare()
{
int i, j;
for( i=1; i<=N; i++ )
{
int m = 0;
for( j=1; j<=i; j++ )
{
int XOR = 0;
XOR ^= g[j - 1];
XOR ^= g[i - j];
f[++m] = XOR;
}
for( j=1; j<i; j++ )
{
int XOR = 0;
XOR ^= g[j - 1];
XOR ^= g[i - j - 1];
f[++m] = XOR;
}
sort( f + 1, f + m + 1 );
int mex = 0;
for( j=1; j<=m; j++ )
if( mex == f[j] ) mex++;
g[i] = mex;
}
}
int main()
{
Precalculare();
for( int i=1; i<=N; i++ )
cout << i << ": " << g[i] << "\n";
int task;
fin >> task;
while( task-- )
{
Citire();
Rezolvare();
}
return 0;
}