Cod sursa(job #2456416)

Utilizator stefantagaTaga Stefan stefantaga Data 14 septembrie 2019 12:30:04
Problema Bowling Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.78 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("bowling.in");
ofstream g("bowling.out");
int nim[50005],i,j,n,x,mex,val,t,nr,rez,valoare;
int main()
{
    f>>t;
    nim[1]=1;
    nim[2]=2;
    nim[3]=1;
    nim[4]=2;
    nim[5]=3;
    nim[6]=1;
    nim[7]=2;
    for (;t>0;t--)
    {
        f>>n;
        nr=0;
        rez=0;
        for (i=1;i<=n;i++)
        {
            f>>x;
            if (x==1)
            {
                nr++;
            }
            else
            {
                if (nr>7)
                {
                    nr-=7;
                    if (nr%3==1)
                {
                    valoare=3;
                }
                else
                if (nr%3==2)
                {
                    valoare=4;
                }
                else
                {
                    valoare=5;
                }
                }
                else
                {
                    valoare=nim[nr];
                }
                rez=rez^valoare;
                nr=0;
            }
        }
        if (nr>7)
                {
                    nr-=7;
                    if (nr%3==1)
                {
                    valoare=3;
                }
                else
                if (nr%3==2)
                {
                    valoare=4;
                }
                else
                {
                    valoare=5;
                }
                }
                else
                {
                    valoare=nim[nr];
                }
                rez=rez^valoare;
        if (rez==0)
        {
            g<<"Fumeanu"<<'\n';
        }
        else
        {
            g<<"Nargy"<<'\n';
        }
    }
    return 0;
}