Pagini recente » Cod sursa (job #1231918) | Cod sursa (job #1511183) | Cod sursa (job #2333701) | Cod sursa (job #2805024) | Cod sursa (job #1753392)
#include <fstream>
using namespace std;
ifstream fin("perle.in");
ofstream fout("perle.out");
int v[10005],n;
int placeb(int p);
int placec(int p);
int main() {
int i,t;
fin>>t;
while(t--) {
fin>>n;
for(i=1;i<=n;++i) fin>>v[i];
if(n==1||placeb(1)==n+1||placec(1)==n+1) fout<<"1\n";
else fout<<"0\n";
}
return 0;
}
int placeb(int p) {
if(p+1<=n&&v[p]==2) return placeb(p+1);
if(p+4<=n&&v[p]==1&&v[p+2]==3) return placec(p+4);
return n+2;
}
int placec(int p) {
if(p+2<=n) {
if(v[p]==3) return placec(placeb(p+1));
if(v[p]==1&&v[p+1]==2) return p+3;
}
if(p<=n&&v[p]==2) return p+1;
return n+2;
}