Submission #67375

#TimeUsernameProblemLanguageResultExecution timeMemory
67375zetapiParrots (IOI11_parrots)C++14
0 / 100
7 ms2632 KiB
#include "encoder.h" #include "encoderlib.h" #include "bits/stdc++.h" using namespace std; #define pb push_back #define mp make_pair #define ll long long #define itr ::iterator typedef pair<int,int> pii; const int MAX=1e5; void encode(int N,int M[]) { int arr[1000]; vector<pii> vec; for(int A=0;A<N;A++) { send(M[A]); send(M[A]); send(M[A]); vec.pb(mp(M[A],A)); } sort(vec.begin(),vec.end()); for(int A=0;A<vec.size();A++) arr[vec[A].second]=A; for(int A=0;A<N;A++) { int res=A; for(int B=0;B<4;B++) { if(arr[A]&(1<<B)) res+=1<<(B+4); } send(res); } return ; }
#include "decoder.h" #include "decoderlib.h" #include "bits/stdc++.h" using namespace std; #define pb push_back #define mp make_pair #define ll long long #define itr ::iterator typedef pair<int,int> pii; const int MAX=1e5; void decode(int N, int L, int X[]) { vector<int> vec; map<int,int> maps; int res[1000]={0}; for(int A=0;A<L;A++) maps[X[A]]++; for(auto A:maps) if(A.second>=3) vec.pb(A.first); sort(vec.begin(),vec.end()); for(auto A:maps) { assert(A.second==1 or A.second==3 or A.second==4); if(A.second==3) continue; int ind=0,num=0; for(int B=0;B<4;B++) if(A.first&(1<<B)) ind+=(1<<B); for(int B=0;B<4;B++) if(A.first&(1<<(B+4))) num+=(1<<B); assert(res[ind]==0); res[ind]=num; } for(int A=0;A<N;A++) output(vec[res[A]]); return ; }

Compilation message (stderr)

encoder.cpp: In function 'void encode(int, int*)':
encoder.cpp:27:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int A=0;A<vec.size();A++)
              ~^~~~~~~~~~~
#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...