Cod sursa(job #2792035)

Utilizator sims_glAlexandru Simion sims_gl Data 31 octombrie 2021 18:41:22
Problema Bowling Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.16 kb
#include<iostream>
#include<fstream>
using namespace std;
int i,n,m,sum,v[500005],x,t,nr;
int main()
{
    freopen("bowling.in", "r", stdin);
    freopen("bowling.out", "w", stdout);

    for(int i=1;i<=100;i++)
    {
        int mex[50005]={0};
        int sum=0;
        for(int j=1;j<=i;j++)
        {
            mex[v[j-1]^v[i-j]]++;
        }
        for(int j=1;j<i;j++)
        {
            mex[v[j-1]^v[i-j-1]]++;
        }
        for(int j=0;j<=i;j++)
        {
            if(mex[j]==0)
            {
                v[i]=j;
                break;
            }

        }
    }
    for(int i=101;i<=50000;i++)
    {
        v[i]=v[i-12];
    }
    scanf("%d", &t);
    for(int j=1;j<=t;j++)
    {
        scanf("%d",&n);
        nr=0;
        for(int i=1;i<=n;i++)
        {
            scanf("%d" , &x);
            if(x==1)
            {
                nr++;
            }
            else {
                sum=sum^v[nr];
                nr=0;
            }
        }
        sum=sum^v[nr];
        if(sum>0)
        {
            cout<<"Nargy"<<'\n';
        }
        else cout<<"Fumeanu"<<'\n';
    }
}