Submission #900296

#TimeUsernameProblemLanguageResultExecution timeMemory
900296ar88loParrots (IOI11_parrots)C++14
0 / 100
6 ms1376 KiB
#include "encoder.h" #include "encoderlib.h" #include <bits/stdc++.h> using namespace std; vector<int> tovec(int a){ vector<int> ret; for(int i = 0; i < 8; i++){ ret.push_back(a%2); a/=2; } return ret; } int b [] = {1, 2, 3}; void encode(int N, int M[]){ vector<int> v; for(int i = N-1; i >= 0; i--){ vector<int> temp = tovec(M[i]); for(auto t:temp){ v.push_back(t); } } reverse(v.begin(), v.end()); int ind = 0; int times = 0; for(int i = 0; i <v.size(); i+=2){ if(v[i] == 1 && v[i+1] == 1){ times++; } } if(times > 6*N){ send(0); send(0); send(0); send(0); reverse(b, b+3); } for(int i = 0; i <v.size(); i+=2){ if(v[i] == 1 && v[i+1] == 1){ for(int i = 0; i < b[0]; i++){ send(ind); } } if(v[i] == 1 && v[i+1] == 0){ for(int i = 0; i < b[1]; i++){ send(ind); } } if(v[i] == 0 && v[i+1] == 1){ for(int i= 0; i < b[2]; i++){ send(ind); } } ind++; } }
#include "decoder.h" #include "decoderlib.h" #include <bits/stdc++.h> using namespace std; int vectoint(vector<int> a){ reverse(a.begin(), a.end()); int ret = 0; for(int i = 0; i < a.size(); i++){ ret += (a[i]<<i); } return ret; } int b[3] = {1,2,3}; void decode(int N, int L, int X[]){ int c[256]; memset(c, 0, sizeof c); for(int i = 0; i < L; i++){ c[X[i]]++; } if(c[0] >= 4){ c[0] -= 4; reverse(b, b+3); } vector<int> ans; for(int i = 0; i < N * 8; i++) ans.push_back(0); for(int i = 0; i < 256; i++){ if(c[i] == b[0]){ ans[i*2] = 0; ans[i*2 + 1] = 1; } else if(c[i] == b[1]){ ans[i*2] = 1; ans[i*2+1] = 0; } else if(c[i] == b[2]){ ans[i*2] = 1; ans[i*2+1] = 1; } } vector<int> temp; for(int i = 0; i < ans.size(); i+=8){ temp.clear(); for(int j = i; j < i+8; j++){ temp.push_back(ans[j]); } output(vectoint(temp)); } }

Compilation message (stderr)

encoder.cpp: In function 'void encode(int, int*)':
encoder.cpp:28:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   28 |     for(int i = 0; i <v.size(); i+=2){
      |                    ~~^~~~~~~~~
encoder.cpp:38:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   38 |     for(int i = 0; i <v.size(); i+=2){
      |                    ~~^~~~~~~~~

decoder.cpp: In function 'int vectoint(std::vector<int>)':
decoder.cpp:9:26: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    9 |         for(int i = 0; i < a.size(); i++){
      |                        ~~^~~~~~~~~~
decoder.cpp: In function 'void decode(int, int, int*)':
decoder.cpp:47:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   47 |     for(int i = 0; i < ans.size(); i+=8){
      |                    ~~^~~~~~~~~~~~
#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...