Cod sursa(job #1476296)

Utilizator BodStfBodoarca Stefan BodStf Data 24 august 2015 21:05:57
Problema Perle Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<stdio.h>

int n,k,v[10010];
int B(int x);
int C(int x);

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

int C(int x)
{
	if(v[x]==2) return x+1;
	if(v[x]==3) return C(B(x+1));
	if(v[x]==1 && v[x+1]==2) return x+3;
}

int main()
{
	FILE* f1,*f2;
	f1=fopen("perle.in","r");
	f2=fopen("perle.out","w");
	fscanf(f1,"%d",&n);
	for(int i=1;i<=n;i++)
	{
		fscanf(f1,"%d",&k);
		for(int j=1;j<=k;j++)
			fscanf(f1,"%d",&v[j]);
		if(k==1 || B(1)==k+1 || C(1)==k+1)
			fprintf(f2,"1\n");
		else fprintf(f2,"0\n");
	}
	return 0;
}