# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
600863 | 2022-07-21T08:37:45 Z | alextodoran | Stranded Far From Home (BOI22_island) | C++17 | 0 ms | 0 KB |
/** ____ ____ ____ ____ ____ ||a |||t |||o |||d |||o || ||__|||__|||__|||__|||__|| |/__\|/__\|/__\|/__\|/__\| **/ #include <bits/stdc++.h> #include "communication.h" using namespace std; typedef long long ll; int send (int s); void encode (int N, int X) { while (N > 0) { if (send(1) == 0) { send(X % 2); N /= 2; X /= 2; } } } int receive (); pair <int, int> decode (int N) { int X = 0; int bit = 0; while (N > 0) { if (receive() == 0) { X += (receive() << bit); N /= 2; bit++; } } return make_pair(X, X); }