#include "Anna.h"
#include <iostream>
#include <vector>
using namespace std;
namespace {
int n, l, r, k, cnt, ans, idx, a[1000001], b[100000];
void send(int x) {
for (int i = 0; i < 9; i++) SendA((x >> i) & 1);
}
} // namespace
void InitA(int N, int L, int R) {
n = N;
l = L;
r = R;
idx = cnt = 0;
k = 20;
send(l / k);
send(r / k);
}
void find() {
int mn = b[0];
// printf("%d %d\n", mn, a[mn]);
if (r < mn) mn = l;
for (int i = l; i < min(r, int(l / k) * k + k); i++) {
if (a[i] < a[mn]) mn = i;
// printf("%d %d\n", i, a[i]);
}
for (int i = max(int(r / k) * k, l); i <= r; i++) {
if (a[i] < a[mn]) mn = i;
// printf("%d %d\n", i, a[i]);
}
ans = mn;
}
void ReceiveA(bool x) {
if (cnt >= 14) {
cnt = 0;
idx++;
}
b[idx] |= x << cnt;
cnt++;
// if (cnt == 14) printf("%d %d\n", idx, b[idx]);
if (cnt == 14 && (idx & 1)) {
a[b[idx - 1]] = b[idx];
}
}
int Answer() {
find();
// printf("my ans %d\n", ans);
return ans;
}
#include "Bruno.h"
#include <iostream>
#include <vector>
using namespace std;
namespace {
int n, a[1000000], cnt, l, r, k, idx, b[3];
bool stillF = true;
} // namespace
void send(int x) {
for (int i = 0; i < 14; i++) SendB((x >> i) & 1);
}
void InitB(int N, std::vector<int> P) {
n = N;
for(int i = 0; i < N; i++) {
a[i] = P[i];
}
cnt = 0;
k = 20;
idx = 0;
}
void solve() {
if (l == r) {
send(n);
send(n + 1);
}
else {
int mn = (l + 1) * k;
for (int i = (l + 1) * k; i < r * k; i++) {
if (a[i] < a[mn]) mn = i;
}
// printf("%d %d\n", mn, a[mn]);
send(mn);
send(a[mn]);
}
for (int i = l * k; i < (l + 1) * k; i++) {
send(i);
send(a[i]);
// printf("%d %d\n", i, a[i]);
}
for (int i = r * k; i < (r + 1) * k ; i++) {
send(i);
send(a[i]);
// printf("%d %d\n", i, a[i]);
}
}
void ReceiveB(bool y) {
if (cnt >= 9) {
cnt = 0;
idx++;
}
b[idx] |= y << cnt;
cnt++;
if (idx == 1 && cnt == 9) {
solve();
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |