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 msg = 0;
for(int j = 4; j >= 0; j--)
{
if((1 << j) & i)msg += (1 << (j + 3));
}
for(int j = 7; j >= 0; j--)
{
if((1 << j) & M[i])
{
for(int k = 2; k >= 0; k--)
{
if(j & (1 << k))msg += (1 << k);
}
}
}
send(msg);
}
}
#include "decoder.h"
#include "decoderlib.h"
#include <bits/stdc++.h>
using namespace std;
void decode(int N, int L, int X[])
{
vector<int> ans(N, 0);
for(int i = 0; i < L; i++)
{
int ind = 0;
for(int j = 7; j >= 3; j--)
{
if((1 << j) & X[i])ind += (1 << (j - 3));
}
int y = 0;
for(int j = 2; j >= 0; j--)
{
y += ((1 << j) & X[i]);
}
ans[ind] += (1 << y);
}
for(int i = 0; i < N; i++)output(ans[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... |