Cod sursa(job #1642541)

Utilizator Cudrici_CarinaCudrici Carina Cudrici_Carina Data 9 martie 2016 14:43:23
Problema Perle Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>
using namespace std;
ifstream fi("perle.in");
ofstream fo("perle.out");
 /*      A -> 1 | 2 | 3
         B -> 2B | 1A3AC
         C -> 2 | 3BC | 12A
*/
int a[10001],i,j,n,k;

int C(int i);
int B(int i);

int B(int i)
{ if (a[i]==2) return B(i+1);
  if (a[i]==1 and a[i+2]==3 ) return C(i+4);
  return 0;
}

int C(int i)
{if (a[i]==2) return i+1;
 if (a[i]==3) return C(B(i+1));
 if (a[i]=1 and a[i+1]==2) return i+3;
 return 0;
}

int main()
{ fi>>n;

for(i=1;i<=n;i++)
{fi>>k;
for(j=1;j<=k;j++) fi>>a[j];
if (k==1 || B(1)==k+1 || C(1)==k+1) fo<<1<<'\n';
                               else fo<<0<<'\n';
}

    return 0;
}