Cod sursa(job #858889)

Utilizator akumariaPatrascanu Andra-Maria akumaria Data 19 ianuarie 2013 14:53:48
Problema Perle Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<stdio.h>


int n;
char a[1010];


int C(int poz);


int B(int poz)
{
	if(a[poz]==2)
		return B(poz+1);
	if(a[poz]==1&&a[poz+2]==3)
		return C(poz+4);
	return 0;
}

int C(int poz)
{
	if(a[poz]==1&&a[poz+1]==2)
		return poz+2;
	if(a[poz]==3)
	{
		int i=B(poz+1);
		if(i)
		return C(poz+1);
	}
	return 0;
}


int main()
{
	freopen("perle.in","r",stdin);
	freopen("perle.out","w",stdout);
	int m,i,j;
	scanf("%d",&m);
	for(j=1;j<=m;++j)
	{
		scanf("%d",&n);
		for(i=1;i<=n;++i)
			scanf("%d",&a[i]);
		if(n==1)
			printf("1\n");
		else
		if(n==C(1)||n==B(1))
			printf("1\n");
		else
			printf("0\n");
		for(i=1;i<=n;++i)
			a[i]=0;
	}
	return 0;
}