Pagini recente » Cod sursa (job #2529333) | Cod sursa (job #932686) | Cod sursa (job #3144813) | Istoria paginii runda/inca_inca_vacanta_ix | Cod sursa (job #3212143)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("perle.in");
ofstream fout ("perle.out");
int n,t,i,lung;
int A(int[],int);
int B(int[],int);
int C(int[],int);
int A(int v[], int st)
{
if(st==n) return 1;
else return 0;
}
int B(int v[], int st)
{
if(v[st]==2) return B(v,st+1);
else if(v[st]==1 && v[st+2]==3) return C(v,st+4);
else return 0;
}
int C(int v[], int st)
{
if(v[st]==2) { if(st==n) return 1; else return 0; }
else if(v[st]==1 && v[st+1]==2) return A(v,st+2);
else if(v[st]==3) return B(v,st+1);
else return 0;
}
int main()
{
fin>>t;
while(t--)
{
fin>>n;
int v[10000];
for(i=1;i<=n;i++) fin>>v[i];
if(A(v,1)) fout<<1;
else if(B(v,1)) fout<<1;
else if(C(v,1)) fout<<1;
else fout<<0;
fout<<endl;
}
return 0;
}