Pagini recente » Cod sursa (job #281838) | Cod sursa (job #892170) | Cod sursa (job #2415456) | Cod sursa (job #1241981) | Cod sursa (job #2418239)
#include <bits/stdc++.h>
#define maxi 10005
using namespace std;
ifstream f ("perle.in");
ofstream g("perle.out");
int n,t,q;
char sir[maxi];
bool B();
bool C();
bool B()
{ if (q>n-1)
return false;
if (sir[q]=='2')
{
q++;
return B();
}
else
{
q=q+2;
if (sir[q]!='3')
return false;
q+=2;
return C();
}
}
bool C()
{
if (q>n-1)
return false;
if(sir[q]=='2')
return true;
if (sir[q]=='3')
{
bool ok=B();
if (ok==false)
return false;
q++;
return C();
}
else if (sir[q]='1' && sir [q+1]=='2')
{
q+=2;
return true;
}
}
int main()
{
bool ans;
f>>t;
bool ok;
for (int i=1;i<=t;i++)
{ int q=0;
f>>n;
for (int j=0;j<=n-1;j++)
f>>sir[j];
sir[n]=0;
if (n==1)
g<<1;
else
{
if (sir[0]=='2' || (n>3 && sir[0]=='1'))
ans=B();
else ans=C();
g<<ans;
}
g<<'\n';
}
}