Cod sursa(job #1880886)

Utilizator MihalachiRazvanMihalachi Razvan MihalachiRazvan Data 15 februarie 2017 23:10:02
Problema Perle Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
#define dim 100005
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&&Li==y)
        return 1;
    else if(a[y]==3)
    return C(B(y+1));
    else if(a[y]==1&&a[y+1]==2&&(y+2)==Li)
        return 1;
    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)==1||C(1)==1)
                            fout<<1<<"\n";
                        else
                            fout<<0<<"\n";
        }
    return 0;
}