제출 #799323

#제출 시각아이디문제언어결과실행 시간메모리
799323Liudas앵무새 (IOI11_parrots)C++17
82 / 100
22 ms1804 KiB
#include <bits/stdc++.h> #include "encoder.h" #include "encoderlib.h" //#include "decoder.h" //#include "decoderlib.h" using namespace std; void encode(int N, int M[]){ for(int i = 0; i < N; i ++){ int t = M[i]; int a = t % 4, b = t / 4 % 4, c = t / 16 % 4, d = t / 64 % 4; int aa = i % 16 * 4 * 4, bb = (i % 16 * 4 + 1) * 4, cc = (i % 16 * 4 + 2) * 4, dd = (i % 16 * 4 + 3) * 4; send(aa + a); send(bb + b); send(cc + c); send(dd + d); if(i > 15){ send(aa + a); send(bb + b); send(cc + c); send(dd + d); } if(i > 31){ send(aa + a); send(bb + b); send(cc + c); send(dd + d); send(aa + a); send(bb + b); send(cc + c); send(dd + d); } if(i > 47){ send(aa + a); send(bb + b); send(cc + c); send(dd + d); send(aa + a); send(bb + b); send(cc + c); send(dd + d); send(aa + a); send(bb + b); send(cc + c); send(dd + d); send(aa + a); send(bb + b); send(cc + c); send(dd + d); } } }
#include <bits/stdc++.h> //#include "encoder.h" //#include "encoderlib.h" #include "decoder.h" #include "decoderlib.h" using namespace std; void decode(int N, int L, int X[]){ map<int, int> arr; for(int i = 0; i < L; i++){ arr[X[i]]++; } vector<int> left[4], ans(N), ord; for(auto[l, r] : arr){ for(int i = 0; i < 4; i++){ if((r & (1 << i))){ left[i].push_back(l); } } } for(int i = 0; i < 4; i++){ for(int j : left[i]){ ord.push_back(j); } } for(int i = 0; i < N; i ++){ int a = ord[i * 4] % 4 + ord[i * 4 + 1] % 4 * 4 + ord[i * 4 + 2] % 4 * 16 + ord[i * 4 + 3] % 4 * 64; output(a); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...