#include "Anna.h"
#include <bits/stdc++.h>
#include <vector>
using namespace std;
namespace
{
int dir;
vector<int> getsir(vector<char> s)
{
int n=s.size();
int N=n;
int zy=0,yx=0;
for(int i=0;i+1<n;i++)
{
if(s[i]=='Z'&&s[i+1]=='Y')
zy++;
if(s[i]=='Y'&&s[i+1]=='X')
yx++;
}
char cz='Z',cx='X';
if(zy>yx)
{
dir=1;
reverse(s.begin(),s.end());
swap(cx,cz);
}
vector<int> rez;
int lastz=-1;
bool havex=0;
for(int i=N-1;i>=0;i--)
if(s[i]==cz)
{
lastz=i;
break;
}
if(lastz==-1)
{
rez.push_back(0);
return rez;
}
for(int i=0;i<N;i++)
{
if(s[i]==cx)
{
if(!havex)
{
rez.push_back(1);
//rez.push_back(0);
}
else
rez.push_back(0);
havex=1;
continue;
}
if(!havex)
{
rez.push_back(0);
continue;
}
if(s[i]==cz&&(i==N||s[i+1]=='Y'||i==lastz))
rez.push_back(1);
else
rez.push_back(0);
}
return rez;
}
}
void Anna(int N, std::vector<char> S)
{
dir=0;
vector<int> sol,sir;
sir=getsir(S);
int nr1=0;
for(int i=1;i<sir.size();i++)
assert(sir[i]+sir[i-1]<2);
bool havex=0;
int lastz=-1;
for(int i=N-1;i>=0;i--)
if(S[i]=='Z')
{
lastz=i;
break;
}
for(int i=0;i<N;i++)
{
if(S[i]=='X')
{
if(!havex)
Send(1);
else
Send(0);
havex=1;
continue;
}
if(!havex)
{
Send(0);
continue;
}
if(S[i]=='Z'&&(i==N||S[i+1]=='Y'||i==lastz))
Send(1);
else
Send(0);
}
}
#include "Bruno.h"
#include <bits/stdc++.h>
#include <vector>
using namespace std;
namespace
{
}
void Bruno(int N, int L, std::vector<int> A)
{
vector<int> vals;
int lft=-1;
for(int i=0;i<A.size();i++)
if(A[i]==1)
{
lft=i;
break;
}
if(lft==-1)
{
for(int i=0;i<N;i++)
Remove(i);
return;
}
for(int i=0;i<lft;i++)
Remove(i);
for(int i=lft+1;i<A.size();i++)
if(A[i]==1)
{
for(int j=i-1;A[j]==0;j--)
Remove(j);
Remove(i);
}
for(int i=L-1;A[i]==0;i--)
Remove(i);
Remove(lft);
}
Compilation message
Anna.cpp: In function 'void Anna(int, std::vector<char>)':
Anna.cpp:77:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
77 | for(int i=1;i<sir.size();i++)
| ~^~~~~~~~~~~
Anna.cpp:76:9: warning: unused variable 'nr1' [-Wunused-variable]
76 | int nr1=0;
| ^~~
Bruno.cpp: In function 'void Bruno(int, int, std::vector<int>)':
Bruno.cpp:17:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
17 | for(int i=0;i<A.size();i++)
| ~^~~~~~~~~
Bruno.cpp:31:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
31 | for(int i=lft+1;i<A.size();i++)
| ~^~~~~~~~~
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
792 KB |
Output is correct |
2 |
Correct |
0 ms |
792 KB |
Output is correct |
3 |
Correct |
0 ms |
776 KB |
Output is correct |
4 |
Correct |
0 ms |
792 KB |
Output is correct |
5 |
Correct |
1 ms |
792 KB |
Output is correct |
6 |
Correct |
2 ms |
776 KB |
Output is correct |
7 |
Correct |
1 ms |
780 KB |
Output is correct |
8 |
Correct |
0 ms |
792 KB |
Output is correct |
9 |
Correct |
0 ms |
796 KB |
Output is correct |
10 |
Correct |
1 ms |
784 KB |
Output is correct |
11 |
Correct |
0 ms |
788 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Partially correct |
43 ms |
8216 KB |
Partially correct |
2 |
Partially correct |
42 ms |
8224 KB |
Partially correct |
3 |
Partially correct |
43 ms |
8528 KB |
Partially correct |
4 |
Partially correct |
42 ms |
8524 KB |
Partially correct |
5 |
Partially correct |
42 ms |
8312 KB |
Partially correct |
6 |
Partially correct |
45 ms |
8424 KB |
Partially correct |
7 |
Partially correct |
42 ms |
8924 KB |
Partially correct |
8 |
Partially correct |
41 ms |
8416 KB |
Partially correct |
9 |
Partially correct |
40 ms |
8516 KB |
Partially correct |
10 |
Partially correct |
42 ms |
8392 KB |
Partially correct |
11 |
Partially correct |
45 ms |
8424 KB |
Partially correct |
12 |
Partially correct |
48 ms |
8416 KB |
Partially correct |
13 |
Partially correct |
45 ms |
8336 KB |
Partially correct |
14 |
Partially correct |
45 ms |
8440 KB |
Partially correct |
15 |
Partially correct |
52 ms |
8672 KB |
Partially correct |
16 |
Runtime error |
5 ms |
2004 KB |
Execution killed with signal 6 |
17 |
Halted |
0 ms |
0 KB |
- |