Pagini recente » Cod sursa (job #385281) | Cod sursa (job #2035635) | Cod sursa (job #2379885) | Cod sursa (job #2231432) | Cod sursa (job #1759030)
#include <fstream>
using namespace std;
ifstream f("perle.in");
ofstream g("perle.out");
int i,t,n,v[1<<14];
int C(int p);
int B(int p)
{
if(p+1<=n&&v[p]==2) return B(p+1);
if(p+4<=n&&v[p]==1&&v[p+2]==3) return C(p+4);
return n+2;
}
int C(int p)
{
if(p+2<=n)
{
if(v[p]==3) return C(B(p+1));
if(v[p]==1&&v[p+1]==2) return p+3;
}
if(p<=n&&v[p]==2) return p+1;
return n+2;
}
int main()
{
f>>t;
while(t--)
{
f>>n;
for(i=1;i<=n;++i) f>>v[i];
bool ok=0;
if(n==1||B(1)==n+1||C(1)==n+1) ok=1;
g<<ok<<'\n';
}
return 0;
}