Pagini recente » Cod sursa (job #2164302) | Cod sursa (job #1649122) | Cod sursa (job #413735) | Cod sursa (job #1065095) | Cod sursa (job #328029)
Cod sursa(job #328029)
#include<stdio.h>
int a[10010];
int n,t,i;
char perlab(int x);
char perlac(int x);
char perlab(int x)
{
if (a[x]==2) return perlab(x+1);
else
if (a[x]==1 && a[x+2]==3) return perlac(x+4);
return 0;
}
char perlac(int x)
{
if (x==n+1) return 1;
if (a[x]==2) return perlac(x+1);
if (a[x]==1 && a[x+1]==2) return perlac(x+3);
if (a[x]==3) return perlab(x+1);
return 0;
}
void rasp(char ok)
{
printf("%d\n",ok);
}
void solve()
{
char ok;
scanf("%ld",&n);
for (i=1; i<=n; i++)
scanf("%ld",&a[i]);
if (n==1)
{
rasp(1);
return;
}
if (n==2)
{
rasp(0);
return;
}
if (a[1]==3)
{
ok=perlac(1);
rasp(ok);
return;
}
if (n>=4 && a[1]==1 && a[3]==3)
{
ok=perlab(1);
rasp(ok);
return;
}
if (a[1]==1 && a[2]==2)
{
ok=perlac(1);
rasp(ok);
return;
}
if (a[1]==2)
{
ok=perlab(1);
rasp(ok);
return;
}
rasp(0);
return;
}
int main()
{
freopen("perle.in","r",stdin);
freopen("perle.out","w",stdout);
scanf("%ld",&t);
while (t)
{
solve();
t--;
}
fclose(stdin); fclose(stdout);
return 0;
}