#include "encoder.h"
#include "encoderlib.h"
#include <bits/stdc++.h>
using namespace std;
void encode(int N, int M[])
{
int x=0,y=1;
while(x*2<=N-1)y*=2,x++;
int cnt=0;
for(int i=0;i<8;i++)
for(int j=0;j<N;j++)
if(M[j]&(1<<i))cnt++;
if(cnt>N*4)send(0),send(0);
for(int i=0;i<8;i++)
for(int j=0;j<N;j++)
if(cnt>N*4&&!(M[j]&(1<<i)) ||
cnt<=4*N&&(M[j]&(1<<i)))
{
//cout<<(j<<3)+i<<" "<<j<<" "<<i<<endl;
send((j<<3)+i);
}
}
#include "decoder.h"
#include "decoderlib.h"
#include <bits/stdc++.h>
using namespace std;
int a[128];
void decode(int N, int L, int X[])
{
for(int i=0;i<N;i++)
a[i]=0;
int zero=0;
for(int i=0;i<L;i++)
{
int b=(X[i]&1)+(X[i]&2)+(X[i]&4);
if(X[i]==0)zero++;
else a[X[i]>>3]+=(1<<b);
}
if(zero%2==1)a[0]+=1;
if(zero>=2)
{
for(int i=0;i<N;i++)
a[i]=255-a[i];
}
for(int i=0;i<N;i++)
output(a[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... |