#include"communication.h"
using namespace std;
void encode(int N, int X) {
send(X / 2);
int v1 = send(X % 2);
int v2 = send(X % 2);
send(X / 2);
}
pair<int, int> decode(int N) {
int a = receive();
int v1 = receive();
int v2 = receive();
int b = receive();
if (v1 == v2) {
if (v1) {
return {1, 3};
}
else {
return {2, 2};
}
}
else {
// Assume v1 is false
int r1 = 2 * a + v2;
if (r1 < 1 || r1 > N) {
r1 = 1;
}
// Assume v2 is false
int r2 = 2 * b + v1;
if (r2 < 1 || r2 > N) {
r2 = 1;
}
return {r1, r2};
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |