#include "Anna.h"
#include <bits/stdc++.h>
namespace
{
}
void Anna(int N, std::vector<char> S) {
for(int i=0;i<N;i++)
if(S[i]=='X')Send(1);
else Send(0);
/*int x=-1;
int z=-1;
for(int i=0;i<N;i++)
{
if(S[i]=='X'&&x==-1)
{
x=i;
for(int j=0;j<=16;j++)
if((1<<j)&x)Send(1);
else Send(0);
}
}
for(int i=N-1;i>=0;i--)
{
if(S[i]=='Z'&&z==-1)
{
z=i;
for(int j=0;j<=16;j++)
if((1<<j)&z)Send(1);
else Send(0);
}
}*/
for(int i=0;i<N;i++)
if(S[i]=='Y')Send(1);
else Send(0);
}
#include "Bruno.h"
#include <bits/stdc++.h>
namespace
{
char c[100001];
int h[100001];
int lx[100001];
int lz[100001];
}
void Bruno(int N, int L, std::vector<int> A)
{
/*if(A.size()!=N+34)
{
for(int i=0;i<N;i++)
Remove(i);
return;
}
int x=0;
for(int i=0;i<=16;i++)
if(A[i]==1)x+=(1<<i);
for(int i=17;i<=34;i++)
if(A[i]==1)z+=(1<<j)*/
for(int i=0;i<N;i++)
c[i]='Z',h[i]=0;
for(int i=0;i<N;i++)
if(A[i]==1)c[i]='X';
for(int i=N;i<2*N;i++)
if(A[i]==1)c[i-N]='Y';
std::vector<int> v,id;
for(int i=0;i<N;i++)
{
if(c[i]=='Y')
{
if(v.size()&&v[v.size()-1]==1)
{
v.push_back(2);
id.push_back(i);
}
else Remove(i);
}
else if(c[i]=='X')
{
if(v.size()==0||v[v.size()-1]==2)
v.push_back(1),
id.push_back(i);
else Remove(i);
}
else
{
if(v.size()>1&&v.size()%2==1)
{
Remove(id[id.size()-1]);
v.pop_back(),
id.pop_back();
}
while(v.size()>3)
{
Remove(id[id.size()-1]);
id.pop_back();
v.pop_back();
Remove(id[id.size()-1]);
id.pop_back();
v.pop_back();
}
if(v.size()==2)
{
Remove(id[id.size()-1]);
id.pop_back();
v.pop_back();
}
Remove(i);
}
}
for(int i=0;i<id.size();i++)
Remove(id[i]);
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |