Submission #65832

#TimeUsernameProblemLanguageResultExecution timeMemory
65832vsv21gmlParrots (IOI11_parrots)C++14
52 / 100
9 ms2112 KiB
#include "encoder.h" #include "encoderlib.h" int encode4(int i) { if (i < 8) return i; return (i >> 3) + 8; } void encode(int N, int M[]){ int i, position, value; for (i = 0; i < N; i++) { //position = encode4(i) << 4; position = i << 4; while(M[i] > 0) { if (M[i] >= 56) { send(position + encode4(56)); M[i] -= 56; } else { value = 0; if (M[i] >= 32) { value += 32; M[i] -= 32; } if (M[i] >= 16) { value += 16; M[i] -= 16; } if (M[i] >= 8) { value += 8; M[i] -= 8; } if (value > 0) { send(position + encode4(value)); } value = M[i]; M[i] -= 0; send(position + encode4(value)); break; } } } }
#include "decoder.h" #include "decoderlib.h" int decode4(int i) { if (i < 8) return i; else return (i - 8) << 3; } int result[64]; void decode(int N, int L, int X[]){ int i, position; for (i = 0; i < N; i++) result[i] = 0; for (i = 0; i < L; i++) { //position = decode4(X[i] >> 4); //if (position > 0 && position < 8) X[i] -= (position << 4); //else if(position >= 8) X[i] -= (((position >> 3) + 8) << 4); position = X[i] >> 4; result[position] += decode4(X[i] - (position << 4)); } for (i = 0; i < N; i++) output(result[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...