Pagini recente » Cod sursa (job #525375) | Cod sursa (job #2624704) | Cod sursa (job #1039756) | Cod sursa (job #1558102) | Cod sursa (job #216588)
Cod sursa(job #216588)
#include <stdio.h>
long T,n,k,i,a[10240];
bool pB();bool pC();
bool pB(){
if (k>n)return 0;
if (a[k]==1){
if (k+4>n)return 0;
if (a[k+2]!=3)return 0;
k+=4;return pC();
}
if (a[k]==2){k++;return pB();}
return 0;
}
bool pC(){
if (k>n)return 0;
if (k<=n&&a[k]==2){k++;return 1;}
if (a[k]==3){if (k+6>n)return 0; k++; pB(); pC();}
if (a[k]==1){if(k+2>n)return 0; if (a[k+1]!=2)return 0;else {k+=3;return 1;}}
return 0;
}
int main(){
freopen("perle.in","r",stdin);
freopen("perle.out","w",stdout);
scanf("%ld\n",&T);
while(T--){
scanf("%ld ",&n);for (i=1;i<=n;++i)scanf("%ld",&a[i]);
if (n==1){printf("1\n");continue;}
k=1;
if (pB()&&k>=n)printf("1\n");
else {//k=1;if (pC()&&k>=n)printf("1\n");
/* else*/ printf("0\n");
}
}
return 0;
}