Pagini recente » Cod sursa (job #918910) | Cod sursa (job #2116210) | Cod sursa (job #1322230) | Istoria paginii runda/120 | Cod sursa (job #651521)
Cod sursa(job #651521)
#include <cstdio>
#define NMax 10005
using namespace std;
int X[NMax], N;
int B (int P); int C (int P);
int B (int P)
{
if (P>=N+1)
{
return -1;
}
if (X[P]==2)
{
return B (P+1);
}
if (X[P]==1 and X[P+2]==3)
{
return C (P+4);
}
return -1;
}
int C (int P)
{
if (X[P]==2)
{
return P+1;
}
if (X[P]==1 and X[P+1]==2)
{
return P+3;
}
if (X[P]==3)
{
return C (B (P+1));
}
return -1;
}
int main()
{
freopen ("perle.in", "r", stdin);
freopen ("perle.out", "w", stdout);
int T;
scanf ("%d", &T);
for (; T>0; --T)
{
scanf ("%d", &N);
for (int i=1; i<=N; ++i)
{
scanf ("%d", &X[i]);
}
int S=B (1);
if (S!=N+1)
{
S=C (1);
}
if (N==1 or S==N+1)
{
printf ("1\n");
continue;
}
printf ("0\n");
}
return 0;
}