# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
853809 | danikoynov | Ancient Machine (JOI21_ancient_machine) | C++17 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "Anna.h"
#include <vector>
#include <bits/stdc++.h>
namespace
{
}
vector < int > binary_to_fibonacci(vector < int > seq)
{
}
void Anna(int N, std::vector<char> S)
{
for (int i = 0; i < N; i ++)
{
if (S[i] == 'Z' && (i == 0 || S[i - 1] != 'Z'))
Send(1);
else
Send(0);
}
int pt = 0;
while(pt < N && S[pt] != 'X')
pt ++;
for (int bit = 0; bit < 20; bit ++)
{
if ((pt & (1 << bit)) > 0)
Send(1);
else
Send(0);
}
}
#include "Bruno.h"
#include <vector>
#include <iostream>
namespace
{
const int maxn = 1e5 + 10;
int variable_example = 0;
int FunctionExample(int P)
{
return 1 - P;
}
char c[maxn];
} // namespace
void sub_solve()
{
}
void Bruno(int N, int L, std::vector<int> A)
{
int pt = 0;
for (int bit = 0; bit < 20; bit ++)
{
pt = pt + A[bit + N] * (1 << bit);
}
for (int i = 0; i < pt; i ++)
Remove(i);
std::vector < int > zpos;
for (int i = pt; i < N; i ++)
{
if (A[i] == 1)
zpos.push_back(i);
}
int last = pt;
for (int i = 0; i < zpos.size(); i ++)
{
for (int j = zpos[i] - 1; j > last; j --)
Remove(j);
Remove(zpos[i]);
last = zpos[i];
}
for (int i = N - 1; i > last; i --)
Remove(i);
if (pt != N)
Remove(pt);
/**for (int i = 0; i < N; i ++)
std::cout << c[i] << " ";
std::cout << std::endl;*/
}