Submission #925469

#TimeUsernameProblemLanguageResultExecution timeMemory
925469dranjohnFlight to the Ford (BOI22_communication)C++17
15 / 100
25 ms3112 KiB
#include "communication.h" #include <iostream> #include <vector> int send_trit(int T) { int position = 0; int depth = 0; while (depth < 2) { int intent = 0; if (position != (T + 2) % 3) intent = 1; if (send(intent) == 0) { ++position; position %= 3; } else ++depth; } return (position + 1) % 3; } void encode(int N, int X) { --X; if (N > 3) return; send_trit(X); } int receive_trit() { int position = 0; int depth = 0; while (depth < 2) { if (receive() == 0) { ++position; position %= 3; } else ++depth; } return (position + 1) % 3; } std::pair<int, int> decode(int N) { int X = receive_trit(); return { (X + 1) % 3 + 1, (X + 2) % 3 + 1 }; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...