Pagini recente » Istoria paginii runda/cei_mai_mari_olimpicari_runda_4/clasament | Cod sursa (job #1514142) | Cod sursa (job #1195320) | Cod sursa (job #607083) | Cod sursa (job #1361446)
#include <fstream>
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
int verifB(int poz);
int verifC(int poz);
int t, n;
int v[20];
int verifB(int poz) {
if (poz > n)
return 20;
if (v[poz] == 2)
return verifB(poz + 1);
if (v[poz] == 1 && v[poz + 2] == 3)
return verifC(poz + 4);
return 20;
}
int verifC(int poz) {
if (poz > n)
return 20;
if (v[poz] == 2)
return poz;
if (v[poz] == 1 && v[poz + 1] == 2)
return poz + 2;
if (v[poz] == 3)
return verifC(1 + verifB(poz + 1));
return 20;
}
int main() {
fin >> t;
while (t--) {
fin >> n;
for (int i = 1; i <= n; i++)
fin >> v[i];
if (n == 1) {
fout << "1\n";
continue;
}
if (verifB(1) == n || verifC(1) == n) {
fout << "1\n";
continue;
}
fout << "0\n";
}
return 0;
}