Pagini recente » Cod sursa (job #1905477) | Cod sursa (job #265821) | Cod sursa (job #2120391) | Cod sursa (job #2351197) | Cod sursa (job #238142)
Cod sursa(job #238142)
#include<iostream.h>
#include<stdio.h>
FILE *f=fopen("perle.in","r"),*g=fopen("perle.out","w");
int n,a[10001];
int c(int);
int b(int);
int b(int i)
{
if(*(a+i)==2)
return b(i+1);
if(*(a+i)==1&&*(a+2+i)==3)
return c(i+4);
return c(i+1);
}
int c(int i)
{
if(*(a+i)==2)
{
if(i==n)
return 1;
return c(i+1);
}
if(*(a+i)==1&&*(a+i+1)==2)
{
if(i+2==n)
return 1;
return c(i+3);
}
if(*(a+i)==3)
return b(i+1);
return 0;
}
int solve()
{
if(n==1)
return 1;
if(n==2)
return 0;
if(a[1]==3)
return c(1);
return b(1);
}
int main()
{
int len;
fscanf(f,"%d",&len);
for(int i=1;i<=len;i++)
{
fscanf(f,"%d",&n);
for(int j=1;j<=n;j++)
fscanf(f,"%d",&a[j]);
fprintf(g,"%d\n",solve());
}
return 0;
}