Cod sursa(job #2298632)

Utilizator AntoniuFicAntoniu Ficard AntoniuFic Data 8 decembrie 2018 12:01:19
Problema Perle Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <iostream>
#include <fstream>

using namespace std;

int n, l, s, v[10001];

int b(int i=0);

int c(int i=0)
{
    if(v[i]==2)
        return i;
    else if(v[i]==3)
        return c(b(i+1));
    else if(v[i]==1 && v[i+1]==2)
        return i+2;
    return 0;
}

int b(int i)
{
    if(v[i]==2)
        return b(i+1);
    else if(v[i]==1 && v[i+2]==3)
        return c(i+4);
    return 0;
}

int main()
{
    ifstream f("perle.in");
    ofstream g("perle.out");
    f>>n;
    for(int i=0; i<n; i++)
    {
        f>>l;
        for(int j=0; j<l; j++)
            f>>v[j];
        if(l==1)
        {
            g<<1<<endl;
            continue;
        }
        if(b()==l-1 || c()==l-1)
            g<<1<<endl;
        else
            g<<0<<endl;
    }
    return 0;
}