Submission #946603

#TimeUsernameProblemLanguageResultExecution timeMemory
946603StefanSebezParrots (IOI11_parrots)C++14
52 / 100
3 ms1328 KiB
#include<bits/stdc++.h> #include "encoder.h" #include "encoderlib.h" using namespace std; void encode(int N, int M[]) { for(int i=0;i<N;i++){ int temp=M[i],ct=0; while(temp>0){ int x=i+(1<<4)*ct+(1<<7)*(temp%2); //printf("%i %i %i: %i\n",i,ct,temp%2,x); send(x); ct++; temp/=2; } } /*for(int i=0,sum=0;i<N;i++){ sum+=M[i]; send(sum); }*/ /*int i; for(i=0; i<N; i++) send(M[i]);*/ }
#include<bits/stdc++.h> #include "decoder.h" #include "decoderlib.h" using namespace std; #define pb push_back void decode(int N, int L, int X[]) { int res[N+10]={0}; for(int i=0;i<L;i++){ int temp=X[i],ct=8; vector<int>bits; while(ct--){ bits.pb(temp%2); temp/=2; } int ind=X[i]%(1<<4); /*for(int j=0;j<4;j++){ ind+=(1<<j)*bits[4-j]; }*/ int idx=(X[i]/(1<<4))%(1<<3); /*for(int j=4;j<=6;j++){ idx+=(1<<(j-4))*(bits[4+6-j]); }*/ res[ind]+=(1<<idx)*bits.back(); } for(int i=0;i<N;i++){ output(res[i]); //printf("%i ",res[i]); } //printf("\n"); /*sort(X,X+L); output(X[0]); for(int i=1;i<L;i++){ output(X[i]-X[i-1]); }*/ /*int i, b; for(i=0; i<L; i++) { b = X[i]; output(b); }*/ }
#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...