Cod sursa(job #897433)

Utilizator chescaIosif Chesca chesca Data 27 februarie 2013 20:33:36
Problema Perle Scor 10
Compilator cpp Status done
Runda pregatire_oji_11-12 Marime 0.67 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("perle.in");
ofstream g("perle.out");

int n,m,a[10002],i,j;

int Re1(int);
int Re2(int);
int Re1(int i)
{
if(i<=m)
{
if (a[i]==1 && a[i+2]==3) return Re2(i+4);
else if (a[i]==2) return Re1(i+1);
}
return 0;
}
int Re2(int i)
{
if(i<=m)
{
if(a[i]==2) return i;
else if(a[i]==3) return Re2(Re1(i+1)+1);
else if(a[i]==1 && a[i+1]==2) return i+2;
}
return 0;
}

int main()
{
f>>n;
for(i=1;i<=n;i++)
{
f>>m;
for(j=1;j<=m;j++) f>>a[j];
if(m==1) g<<"1"<<'\n';
else
{
if(Re1(1)==m || Re2(1)==m) g<<"2"<<'\n';
else g<<"0"<<'\n';
}
}
f.close();
g.close();
return 0;
}