Cod sursa(job #28578)

Utilizator p1ccolinoAlexandru Vlad p1ccolino Data 8 martie 2007 01:35:15
Problema Perle Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.99 kb
# include <stdio.h>
# include <fstream.h>
# include<string.h>
ifstream f("perle.in");
ofstream g("perle.out");
int n,l,i,j,c;
char s[100],saux[20];
char* se_poate(int i)
{if(i>=l) return "";
 char s1[100];
 strcpy(s1,se_poate(i+1));
 if(s[i]=='1'){ if(strcmp(s1,"")==0) return "A";
		if(strcmp(s1,"2A")==0) return "C";
		if(strlen(s1)==4 && s1[1]=='3' && s1[3]=='C') return "B";
		saux[0]=s[i];saux[1]=0;
		return strcat(saux,s1);
		}
 else if(s[i]=='2'){if(strcmp(s1,"B")==0) return "B";
		    if(strcmp(s1,"")==0) return"C";
		saux[0]=s[i];saux[1]=0;
		return strcat(saux,s1);

		    }
 else if(s[i]=='3'){if(strcmp(s1,"")==0) return "A";
			if(strcmp(s1,"BC")==0) return "C";
		  saux[0]=s[i];saux[1]=0;
		  return strcat(saux,s1);
			   }
 return "";
 }

int main()
{  f>>n;
  for(i=1;i<=n;i++)
   { f>>l;
     for(j=1;j<=l;j++){f>>c;s[j-1]=c+'0';}
     s[l]=0;
     if(strlen(se_poate(0))==1)g<<1<<'\n';else g<<0<<'\n';

    }


f.close();
g.close();
return 0;  }