Cod sursa(job #2670364)

Utilizator Asgari_ArminArmin Asgari Asgari_Armin Data 9 noiembrie 2020 19:12:22
Problema Perle Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>

using namespace std;

ifstream fin( "perle.in" );
ofstream fout( "perle.out" );

const int NMAX = 1e4;
int v[NMAX + 1];

int C( int poz );

int B( int poz ) {
  if( v[poz] == 2 )
    return B(poz + 1);
  else if( v[poz] == 1 && v[poz + 2] == 3 )
    return C(poz + 4);
  return 0;
}

int C( int poz ){
  if( v[poz] == 2 )
    return poz + 1;
  if( v[poz] == 3 )
    return C(B(poz + 1));
  else if( v[poz] == 1 && v[poz + 1] == 2 )
    return poz + 3;
  return 0;
}


int main() {
  int q, n, i;
  fin >> q;
  while( q-- ){
    fin >> n;
    for( i = 0; i < n; ++i )
      fin >> v[i];
    if( n == 1 || C(0) == n || B(0) == n )
      fout << "1\n";
    else
      fout << "0\n";
  }
  return 0;
}