Pagini recente » Cod sursa (job #2735811) | Cod sursa (job #414110) | Cod sursa (job #2210266) | Cod sursa (job #1429787) | Cod sursa (job #1841702)
#include <fstream>
using namespace std;
ifstream f ("perle.in");
ofstream g ("perle.out");
int v[10001], q, i, n;
int perlaC (int poz);
int perlaB(int poz);
int perlaB(int poz)
{
if (poz>n)
{
return 0;
}
if (v[poz]==2)
{
return perlaB(poz+1);
}
if (v[poz]==1&&v[poz+2]==3)
{
return perlaC(poz+4);
}
return 0;
}
int perlaC ( int poz )
{
if (poz > n)
{
return 0;
}
if (v[poz]==2)
{
return poz;
}
if (v[poz]==3)
{
int x = perlaB(x+1);
if (x==0)
return 0;
return perlaC(x+1);
}
if (v[poz]==1&&v[poz+1]==2)
{
return poz+2;
}
return 0;
}
int main ()
{
f>>q;
for (int o = 1 ; o <= q ; o++)
{
f>>n;
if (n==1)
{
g<<1<<'\n';
continue;
}
for (i=1; i<=n; i++)
{
f>>v[i];
}
if ( (perlaB(1) == n) || perlaC(1) == n )
{
g<<1<<'\n';
}
else
{
g<<0<<'\n';
}
}
return 0;
}