This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "encoder.h"
#include "encoderlib.h"
#include <bits/stdc++.h>
using namespace std;
void encode(int N, int M[]){
for(int i=0; i<N; i++){
int pos = 0;
for(int j=0; j<5; j++){
pos += ((1 << j) & i);
}
pos *= 8;
for(int j=0; j<8; j++){
if(!((1 << j) & M[i])) continue;
send(pos + j);
}
}
}
#include "decoder.h"
#include "decoderlib.h"
#include <bits/stdc++.h>
using namespace std;
int res_array[64];
void decode(int N, int L, int X[]){
for(int i=0; i<N; i++) res_array[i] = 0;
for(int i=0; i<L; i++){
int val = 0;
for(int j=0; j<3; j++){
val += ((1 << j) & X[i]);
}
val = (1 << val);
int ind = 0;
X[i] /= 8;
for(int j=0; j<5; j++){
ind += ((1 << j) & X[i]);
}
res_array[ind] += val;
}
for(int i=0; i<N; i++) output(res_array[i]);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |