제출 #573193

#제출 시각아이디문제언어결과실행 시간메모리
573193TimDee앵무새 (IOI11_parrots)C++14
34 / 100
2 ms1044 KiB
#include "encoder.h"
#include "encoderlib.h"
#define forn(i,n) for (int i=0; i<n; i++)

void encode(int n, int message[]) {
    forn(i,n) {
        int x=message[i];
        int a=x%4;
        send(a+i*64);
        x/=4;
        a=x%4;
        send(a+i*64+4);
        x/=4;
        a=x%4;
        send(a+i*64+8);
        x/=4;
        a=x%4;
        send(a+i*64+12);
    }
}
#include "decoder.h"
#include "decoderlib.h"

#define forn(i,n) for (int i=0; i<n; i++)

void decode(int N, int L, int message[]) {
    int a[N];
    forn(i,N) a[i]=0;
    forn(i,L) {
        int x=message[i];
        int j=x/64;
        int k=(x/4)%4;
        int v=x%4;
        //cout<<"["<<j<<"] = "<<v<<' '<<k<<'\n';
        if (k==0) {
            a[j]+=v;
        } else if (k==1) {
            a[j]+=v*4;
        } else if (k==2) {
            a[j]+=v*16;
        } else {
            a[j]+=v*64;
        }
    }
    forn(i,N) output(a[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...