Cod sursa(job #1070154)

Utilizator TarabanDragosTaraban Dragos-Petru TarabanDragos Data 31 decembrie 2013 03:05:38
Problema Perle Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<cstdio>
int n,m,v[10010],i,j,ok;
FILE *f,*g;
int fctc(int k);
int fctb(int k){
    if(v[k]==2)
        return fctb(k+1);
    else if(v[k]==1&&v[k+2]==3)
        return fctc(k+4);
}
int fctc(int k){
    if(v[k]==2)
        return k+1;
    else if(v[k]==3)
        return fctc(fctb(k+2));
    else if(v[k]==1&&v[k+1]==2)
        return k+3;
}
int main(){
    f=fopen("perle.in","r");
    g=fopen("perle.out","w");
    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++){
        fscanf(f,"%d",&m);
        for(j=1;j<=m;j++){
            fscanf(f,"%d",&v[j]);
        }
        if(m==1)
            fprintf(g,"1\n");
        else if(fctb(1)==m+1||fctc(1)==m+1)
            fprintf(g,"1\n");
        else
            fprintf(g,"0\n");
    }
    fclose(f);
    fclose(g);
    return 0;
}