Submission #65912

#TimeUsernameProblemLanguageResultExecution timeMemory
65912lipschitzParrots (IOI11_parrots)C++14
0 / 100
12 ms2496 KiB
#include "encoder.h" #include "encoderlib.h" void encode(int N, int M[]) { int i; if (N > 32) { int mask = 0x000f; for (i = 0; i < N; i++) { int seq = i << 2; int temp = M[i]&mask; for (int j = 0; j < 4; j++) { if (temp & 1) { send(seq + j); } temp >>= 1; } temp = (M[i] >> 4)&mask; for (int j = 0; j < 4; j++) { if (temp & 1) { send(seq + j); send(seq + j); } temp >>= 1; } } return; } for (i = 0; i < N; i++) { int seq = i << 3; int temp = M[i]; for (int j = 0; j < 8; j++) { if (temp & 1) { send(seq + j); } temp >>= 1; } } }
#include "decoder.h" #include "decoderlib.h" #include<algorithm> #include<vector> using namespace std; void decode(int N, int L, int X[]) { int i, mask = 0x0007, mask2 = 0x0003; int b[64]; for (int i = 0; i < 64; i++) b[i] = 0; sort(X, X + L); int seq = 0, ans = 0; if (N > 32) { vector<int> Y; int temp = ((X[0] >> 2) << 3) + (X[0] & mask2); Y.push_back(temp); for (i = 1; i < L; i++) { temp = ((X[i] >> 2) << 3) + (X[i] & mask2); if (temp^Y.back()) { Y.push_back(temp); continue; } Y.pop_back(); Y.push_back(temp + 4); } sort(Y.begin(), Y.end()); for (i = 0; i < Y.size(); i++) { if ((Y[i] >> 3) ^ seq) { b[seq] = ans; ans = 0; seq = Y[i] >> 3; continue; } ans += (1 << (Y[i] & mask)); } b[seq] = ans; for (i = 0; i < N; i++) output(b[i]); return; } for(i=0; i<L; i++) { if ((X[i] >> 3)^seq) { b[seq] = ans; ans = 0; seq = X[i] >> 3; continue; } ans += (1 << (X[i] & mask)); } b[seq] = ans; for (int i = 0; i < N; i++) output(b[i]); }

Compilation message (stderr)

decoder.cpp: In function 'void decode(int, int, int*)':
decoder.cpp:36:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    for (i = 0; i < Y.size(); i++) {
                ~~^~~~~~~~~~
#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...