Pagini recente » Cod sursa (job #2949871) | Cod sursa (job #1765826) | Cod sursa (job #1723733) | Cod sursa (job #2604546) | Cod sursa (job #2536979)
#include <fstream>
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
int n, i, j = 1;
char v[10004];
bool ok;
void b();
void c();
int main ()
{
int X;
fin>>X;
while (X > 0)
{
--X;
char l;
fin>>n;
ok = true;
if (n == 1)
{
fout<<ok<<"\n";
continue;
}
for (i = 1; i <= n; i++)
fin>>v[i];
j = 1;
if (v[1] == '1')
{
if (n == 3)
c();
else
b();
}
else if (v[1] == '2')
b();
else
c();
if (j != n)
ok = false;
fout<<ok<<"\n";
}
return 0;
}
void b()
{
if (j > n)
return;
if (v[j] == '2')
{
++j;
b();
}
else if (v[j] == '1' && v[j + 2] == '3')
{
j += 4;
c();
}
else
ok = false;
}
void c()
{
if (v[j] == '2')
return;
if (v[j] == '1' && v[j + 1] == '2')
{
j += 2;
return;
}
else if (v[j] == '3')
{
++j;
b();
++j;
c();
}
else
ok = false;
}