Cod sursa(job #1914740)

Utilizator razvan171514Razvan Mihai razvan171514 Data 8 martie 2017 18:21:41
Problema Perle Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <fstream>
using namespace std;
ifstream fin ("perle.in");
ofstream fout ("perle.out");
int n,m,t,v[10001],i,j;
int culc(int k);
int culb(int k)
{
    if(k>m)
        return 0;
    if(v[k]==2)
        return culb(k+1);
    if(v[k]==1&&v[k+2]==3)
        return culc(k+4);
    return 0;
}
int culc(int k)
{
    if(k>m)
        return 0;
    if(v[k]==2)
        return k;
    if(v[k]==3)
    {
        t=culb(k+1);
        if(t)
            return culc(t+1);
        else return 0;
    }
    if(v[k]==1&&v[k+1]==2)
        return k+2;
    return 0;
}
int main()
{
    fin>>n;
    for(i=1;i<=n;++i)
    {
        fin>>m;
        for(j=1;j<=m;++j)
            fin>>v[j];
        if(m==1)
            fout<<1<<'\n';
        if(culb(1)!=m && culc(1)!=m)
            fout<<0<<'\n';
        else fout<<1<<'\n';
    }
    return 0;
}