Cod sursa(job #1914755)

Utilizator razvan171514Razvan Mihai razvan171514 Data 8 martie 2017 18:25:01
Problema Perle Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <fstream>
#define dim 100005
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
int n,Li,a[dim];
int C(int y);
int B(int y)
{
   if(a[y]==2)
        return B(y+1);
    else if(a[y]==1 && a[y+2]==3)
        return C(y+4);
        else
        return -1;
}
int C(int y)
{
    if(a[y]==2)
        return y+1;
    else if(a[y]==3)
    return C(B(y+1));
    else if(a[y]==1 && a[y+1]==2)
        return y+3;
    else
        return -1;
}
int main()
{
    fin>>n;
    for(int i=1;i<=n;i++)
    {
        fin>>Li;
        for(int j=1;j<=Li;j++)
            fin>>a[j];
                if(Li==1)
                        fout<<1<<"\n";
                    else if(B(1)==Li+1 || C(1)==Li+1)
                            fout<<1<<"\n";
                        else
                            fout<<0<<"\n";
        }
    return 0;
}