Pagini recente » Cod sursa (job #1799507) | Cod sursa (job #41749) | Cod sursa (job #1112068) | Cod sursa (job #1571740) | Cod sursa (job #2183579)
#include <fstream>
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
const int N=10000;
int test;
int n,v[N+5];
int p;
void A();
void B();
void C();
void A(){
if(v[p]==-1)
return;
p++;
}
void B(){
if(p==n+1){
p=-1;
return;
}
if(v[p]==2){
p++;
B();
}
else{
if(v[p]==1){
p++;
A();
if(v[p]==3)
p++;
A();
C();
}
}
}
void C(){
if(p==n+1){
p=-1;
return;
}
if(v[p]==2)
p++;
if(v[p]==3){
p++;
B();
C();
}
if(v[p]==1){
if(v[p+1]==2){
p++;
p++;
A();
}
}
}
int main(){
fin>>test;
while(test--){
fin>>n;
for(int i=1;i<=n;i++)
fin>>v[i];
p=1;A();if(p==n+1){fout<<"1\n";continue;}
p=1;B();if(p==n+1){fout<<"1\n";continue;}
p=1;C();if(p==n+1){fout<<"1\n";continue;}
fout<<"0\n";
}
return 0;
}
/**
**/