Pagini recente » Cod sursa (job #3228901) | Cod sursa (job #2870254) | Cod sursa (job #1897393) | Cod sursa (job #3194462) | Cod sursa (job #183286)
Cod sursa(job #183286)
#include <cstdio>
#define Nmax 10001
int a[Nmax],L;
int fc(int k);
int fb(int k)
{
if(a[k] == 2)
return fb(k+1);
if(a[k] == 1 && a[k+2] == 3)
return fc(k+4);
return 0;
}
int fc(int k)
{
if(a[k] == 2 )
{
if(k == L-1)
return 1;
return 0;
}
if(a[k] == 1 && a[k+1] == 2)
{
if(k+3 == L)
return 1;
return 0;
}
if(a[k] == 3)
return fb(k+1) && fc(k+2);
return 0;
}
int solve()
{
scanf("%d",&L);
for(int i=0; i<L; i++)
scanf("%d",a + i);
if(L == 1)
return 1;
if(L == 2)
return 0;
if(a[0] == 3)
return fc(0);
return fb(0);
}
int main()
{
freopen("perle.in","r",stdin);
freopen("perle.out","w",stdout);
int nrt;
scanf("%d",&nrt);
for(int i=0; i<nrt; i++)
printf("%d\n",solve());
}