Pagini recente » Borderou de evaluare (job #1036662) | Cod sursa (job #3002579) | Cod sursa (job #772097) | Cod sursa (job #197355) | Cod sursa (job #1263872)
#include <fstream>
using namespace std;
ifstream f("perle.in");
ofstream g("perle.out");
int n,k,v[10009];
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;
if(v[x]==3) return C(B(x+1));
if(v[x]==1 && v[x+1]==2) return x+2;
}
int main()
{ f>>n;
for(int i=1;i<=n;i++){
f>>k;
for(int j=1;j<=k;j++){
f>>v[j];
}
if(k==1 || B(1)==k || C(1)==k) g<<"1"<<endl;
else g<<"0"<<endl;
}
return 0;
}