Cod sursa(job #1750809)

Utilizator VictoriaNevTascau Victoria VictoriaNev Data 31 august 2016 01:17:09
Problema Perle Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <iostream>
#include <fstream>
using namespace std;
int v[1005];
int B(int x);
int C(int x);
int B(int x)
{
    if(v[x]==2)
        return B(x+1);
    if(v[x]==1 && v[x+2]==3)
        return C(x+4);
    return 0;
}
int C(int x)
{
    if(v[x]==2)
        return x+1;
    if(v[x]==3)
        return C(B(x+1));
    if(v[x]==1 && v[x+1]==2)
        return x+3;
}
int main()
{
    ifstream in("perle.in");
    ofstream out("perle.out");
    int tests, n;
    in>>tests;
    while(tests--)
    {
        in>>n;
        for(int i=1; i<=n; i++)
            in>>v[i];
        if(n==1 || B(1)==n+1 || C(1)==n+1)
            out<<1<<'\n';
        else  out<<0<<'\n';
    }
    return 0;
}

//A -> 1 | 2 | 3
//B -> 2B | 1A3AC
//C -> 2 | 3BC | 12A