#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;
std::vector<int> v2;
for(int i=0;i<N;i++)
{
//std::cout<<c[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
{
v2.push_back(i);
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);
}
}
int f=-1;
for(int i=0;i<N;i++)
if(c[i]=='X')
{
f=i;
break;
}
int l=-1;
if(v2.size()==0||v2[v2.size()-1]!=N-1)
v2.push_back(N-1);
for(int i=0;i<v2.size();i++)
{
for(int j=v2[i]-1;j>l;j--)
if(j!=f)Remove(j);
if(v2[i]!=f)Remove(v2[i]);
l=v2[i];
}
if(f!=-1)Remove(f);
//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... |