Pagini recente » Cod sursa (job #899939) | Cod sursa (job #2922737) | Cod sursa (job #1785073) | Cod sursa (job #2146414) | Cod sursa (job #2306898)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
int N, x, a[10005];
int B(int &p);
int C(int &p);
int B(int &p)
{
if(a[p] == 2)
{
p++;
return B(p);
}
else if(a[p] == 1)
{
p++;
if(a[p + 1] == 3)
{
p += 3;
return C(p);
}
}
return 0;
}
int C(int &p)
{
if(a[p] == 2)
{
p++;
return 1;
}
else if(a[p] == 3)
{
p++;
if(B(p));
return C(p);
}
else if(a[p] == 1 && a[p + 1] == 2)
{
p += 3;
return 1;
}
return 0;
}
void Solve()
{
int i, j, p = 1;
fin >> N;
for(i = 1; i <= N; i++)
{
fin >> x;
for(j = 1; j <= x; j++)
fin >> a[j];
p = 1;
if(x == 1)
{
fout << "1\n";
}
else
{
if(B(p) && p == x + 1)
fout << "1\n";
else if(C(p) && p == x + 1)
fout << "1\n";
else fout << "0\n";
}
}
fin.close();
fout.close();
}
int main()
{
Solve();
return 0;
}