Submission #351550

#TimeUsernameProblemLanguageResultExecution timeMemory
351550amunduzbaevParrots (IOI11_parrots)C++14
81 / 100
7 ms1568 KiB
#include "encoder.h" #include "encoderlib.h" #ifndef EVAL #include "grader.cpp" #endif #include <bits/stdc++.h> using namespace std; void encode(int N, int M[]){ vector<int> ans(N*8); for(int i=0;i<N;i++){ for(int j=0;j<8;j++){ ans[i*8 + j] = (M[i]>>j & 1); } } for(int i=1;i<8*N;i++){ ans[i] += ans[i-1]; }if(ans[0]){ for(int i=0;i<8*N;i++){ send(ans[i] - 1); }send(255); }else{ for(int i=0;i<8*N;i++) send(ans[i]); } }
#include "decoder.h" #include "decoderlib.h" #ifndef EVAL #include "grader.cpp" #endif #include <bits/stdc++.h> using namespace std; void decode(int n, int l, int ans[]){ sort(ans, ans+l); //for(int i=0;i<l;i++) cout<<ans[i]<<" "; if(l > n*8) for(int i=0;i<n*8;i++) ans[i]++; //cout<<"\n"<<n*8<<" "<<l<<"\n"; for(int i=0;i<n*8;){ int tmp = 0; for(int j=0;j<8; i++, j++){ int xx = ans[i]; if(i) xx -= ans[i-1]; if(xx) tmp |= (1<<j); } output(tmp); } }
#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...