Cod sursa(job #1992911)

Utilizator mjmilan11Mujdar Milan mjmilan11 Data 21 iunie 2017 20:17:57
Problema Bowling Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.08 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("bowling.in");
ofstream fout("bowling.out");

int n,x,A[50001],T=0;
int K[50001]={0,1,2,3,1,4,3,2,1,4,2,6,4,1,2,7,1,4,3,2,1,4,6,7,4,1,2,8,5,4,7,2,1,8,6,7,4,1,2,3,1,4,7,2,1,8,2,7,4,1,2,8,1,4,7,2,1,4,2,7,4,1,2,8,1,4,7,2,1,8,6,7,4,1,2,8,1,4,7,2,1,8,2,7};

int main()
{
    for(int i=84;i<=45999;i++) /// i<=50k (50000)
        K[i]=K[i-12];
    fin >> T;
    for(int t=1;t<=T;t++)
    {
        fin >> n;
        int nrs=0,popice=0;
        for (int i=1;i<=n;i++)
        {
            fin>>x;
            if (x==1)
                popice++;
            else
            {
                nrs++;
                A[nrs]=popice;
                popice=0;
            }
        }
        if (popice!=0)
        {
            nrs++;
            A[nrs]=popice;
        }
        int rez=0;
        for (int i=1;i<=nrs;i++)
            rez=rez^K[A[i]];
        if(rez==0)
        {
            fout << "Fumeanu\n";
        }
        else
            fout << "Nargy\n";
    }
    return 0;
}