#include "encoder.h"
#include "encoderlib.h"
#include "bits/stdc++.h"
#define rep(i, n) for(int i = 0, i##__n = (int)(n); i < i##__n; ++i)
#define F(i,l,r) for(int i=l,i_end=r;i<i_end;++i)
#define FR(i,l,r) for(int i=l,i_end=r;i>=i_end;--i)
using namespace std;
void encode(int N, int M[]){
int idx=0;
rep(i,N){
rep(j,8){
int now=idx++;
int state=0;
F(k,j,j+2)state+=(1<<(k-j))*(M[i]>>k&1);
rep(k,state)send(now);
j++;
}
}
}
#include "decoder.h"
#include "decoderlib.h"
#include "bits/stdc++.h"
#define rep(i, n) for(int i = 0, i##__n = (int)(n); i < i##__n; ++i)
#define F(i,l,r) for(int i=l,i_end=r;i<i_end;++i)
#define FR(i,l,r) for(int i=l,i_end=r;i>=i_end;--i)
using namespace std;
void decode(int N, int L, int X[]){
vector<int> res(N);
map<int, int> mp;
{
int idx = 0;
rep(i,N){
rep(j,8){
mp[idx]=0;
idx++;
j++;
}
}
}
rep(i,L)mp[X[i]]++;
int bit = 1, idx = 0;
for (auto& [x,cnt]:mp) {
res[idx] += bit*cnt;
bit<<=2;
// cout << idx << " " << bit << " " << cnt << "\n";
if(bit==256) {
idx++;
bit=1;
}
}
rep(i,N)output(res[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... |