Pagini recente » Cod sursa (job #1736046) | Cod sursa (job #1887853) | Cod sursa (job #1603331) | Statistici Petcu Mircea (mirceasp) | Cod sursa (job #1653856)
#include <fstream>
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
const int kmax= 10000;
int v[kmax+1];
int do_c( int x );
int do_b( int x ) {
if ( v[x]==2 ) {
return do_b(x+1);
} else if ( v[x]==1 && v[x+2]==3 ) {
return do_c(x+4);
}
return 0;
}
int do_c( int x ) {
if ( v[x]==2 ) {
return x+1;
} else if ( v[x]==3 ) {
return do_c(do_b(x+1));
} else if ( v[x]==1 && v[x+1]==2 ) {
return x+3;
}
return 0;
}
int main( ) {
int t;
fin>>t;
for ( int cnt= 1; cnt<=t; ++cnt ) {
int k;
fin>>k;
for ( int i= 1; i<=k; ++i ) {
fin>>v[i];
}
if ( k==1 || do_b(1)==k+1 || do_c(1)==k+1 ) {
fout<<"1\n";
} else {
fout<<"0\n";
}
}
return 0;
}