제출 #67271

#제출 시각아이디문제언어결과실행 시간메모리
67271RezwanArefin01앵무새 (IOI11_parrots)C++17
81 / 100
10 ms2528 KiB
#include "encoder.h" #include "encoderlib.h" #include <bits/stdc++.h> using namespace std; void encode(int N, int M[]) { if(N <= 32) { for(int i = 0; i < 8 * N; i++) { int c = (M[i / 8] >> (7 - i % 8)) & 1; if(c) send(i); } } else { vector<int> v; int one = 0, zero = 0; for(int i = 0; i < 4 * N; i++) { int c = M[i / 4] >> ((3 - (i % 4)) * 2) & 3; for(int j = 0; j < c; j++) { v.push_back(i); one += i; zero += 3 - i; } } if(zero < one) { for(int &x : v) { for(int i = 0; i < 3 - x; i++) send(3 - x); } } else { for(int &x : v) for(int i = 0; i < x; i++) send(x); } } }
#include "decoder.h" #include "decoderlib.h" #include <bits/stdc++.h> using namespace std; void decode(int N, int L, int X[]) { int a[N * 8]; memset(a, 0, sizeof a); if(N <= 32) { for(int i = 0; i < L; i++) a[X[i]] = 1; for(int i = 0; i < N; i++) { int num = 0; for(int j = i * 8; j < (i + 1) * 8; j++) num = num * 2 + a[j]; output(num); } } else { int zero = 0; if(a[255] > 3) { a[255] -= 3; for(int i = 0; i < L; i++) X[i] = 3 - X[i]; } for(int i = 0; i < L; i++) a[X[i]]++; for(int i = 0; i < N; i++) { int num = 0; for(int j = i * 4; j < (i + 1) * 4; j++) num = num * 4 + a[j]; output(num); } } }

컴파일 시 표준 에러 (stderr) 메시지

decoder.cpp: In function 'void decode(int, int, int*)':
decoder.cpp:19:13: warning: unused variable 'zero' [-Wunused-variable]
         int zero = 0;
             ^~~~
#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...