Pagini recente » Cod sursa (job #2494634) | Cod sursa (job #2797062) | Cod sursa (job #694965) | Cod sursa (job #2944198) | Cod sursa (job #2157274)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
int n, i, j, l, v[10010];
void b(int &x);
void c(int &x);
void b(int &x)
{
if(x<l)
{
if(v[x] == 2)
{
/// verific daca v[x+1] e b
x++;
b(x);
}
else if(v[x] == 1)
{
/// verific daca v[x+2] e 3
/// verific daca v[x+4] e c
if(v[x+2] == 3)
{
x += 4;
c(x);
}
}
}
}
void c(int &x)
{
if(x<=l)
{
if(v[x] == 2)
{
x++;
}
if(v[x] == 3)
{
///verific daca v[x+1] e b
///verific daca v[x+2] e c
x++;
b(x);
x = x;
c(x);
}
else if(v[x]==1)
{
///verific daca v[x+1] e 2
///true
if(v[x+1] == 2)
{
x+=3;
}
}
}
}
int main()
{
int x;
fin >> n;
for(i=1; i<=n; i++)
{
fin >> l;
for(j=1; j<=l; j++)
{
fin >> v[j];
}
if(l == 1)
{
fout << 1 << '\n';
}
else
{
x=1;
b(x);
if(x == l+1)
{
fout << 1 << '\n';
}
else
{
x=1;
c(x);
if(x == l+1)
{
fout << 1 << '\n';
}
else
{
fout << 0 << '\n';
}
}
}
}
return 0;
}