제출 #1182222

#제출 시각아이디문제언어결과실행 시간메모리
1182222kl0989eFlight to the Ford (BOI22_communication)C++20
15 / 100
11 ms2828 KiB
#include <bits/stdc++.h> #include"communication.h" using namespace std; #pragma GCC optimize("Ofast") #define ll long long #define fi first #define se second #define pb push_back #define vi vector<int> #define vl vector<ll> #define pi pair<int, int> #define pl pair<ll,ll> #define all(x) (x).begin(),(x).end() vi nums={0b0000,0b0110,0b1001,0b1111}; set<int> valid={0b0000,0b0001,0b0010,0b0100,0b0101,0b1000,0b1001,0b1010}; pi get(int a) { pi ret={-1,-1}; for (int i=0; i<4; i++) { if (valid.count(a^nums[i])) { if (ret.fi==-1) { ret.fi=i; } else { ret.se=i; } } } return ret; } void s(int i) { if (i==0) { send(0);send(0);send(0);send(0); } else if (i==1) { send(0);send(1);send(1);send(0); } else if (i==2) { send(1);send(0);send(0);send(1); } else { send(1);send(1);send(1);send(1); } } int rec() { int ret=0; for (int i=0; i<4; i++) { ret=(ret<<1)+receive(); } return ret; } void encode(int n, int x) { s(x-1); } pi decode(int n) { pi temp=get(rec()); return {temp.fi+1,min(temp.se+1,3)}; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...