Cod sursa(job #1878217)

Utilizator KronSabau Valeriu Kron Data 13 februarie 2017 22:34:29
Problema Perle Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;

int a[10010],n,t,r,i;
ifstream f("perle.in");
ofstream g("perle.out");
int B(int it),C(int it);
int B(int it)
{

    if(a[it]==2)
        return B(it+1);


    if(a[it]==1 && a[it+2]==3)
        return C(it+4);

    return 0;
}

int C(int it)
{

    if(a[it]==2)
        return it+1;
    if(a[it]==1 && a[it+1]==2)
            return it+3;
    if(a[it]==3)
        return (C(B(it+1)));

    return 0;

}

int main()
{
    f >> t;
    for(int i=0;i<t;i++){
        f>>n;
        for(int j=1;j<=n;j++)
        {
            f>>a[j];
        }

        if(n==1)
        g << "1\n";
        else if(B(1)==n+1 || C(1)==n+1)
            g<< "1\n";
        else g << "0\n";

    }
    return 0;
}