Submission #137974

#TimeUsernameProblemLanguageResultExecution timeMemory
137974Mahmoud_AdelMinerals (JOI19_minerals)C++14
80 / 100
60 ms3372 KiB
#include "minerals.h" //~ #include "grader.cpp" #include <bits/stdc++.h> using namespace std; const int N = 43004; vector<int> vec1, vec2; void dc(vector<int> v1, vector<int> v2, int bit) { //~ cout << "v1 : "; //~ for(int i : v1) cout << i << " "; //~ cout << endl; //~ cout << "v2 : "; //~ for(int i : v2) cout << i << " "; //~ cout << endl; if(v1.size() == 1) {Answer(v1[0], v2[0]); return;} vector<int> l1(v1.begin(), v1.begin()+v1.size()/2); vector<int> l2(v1.begin()+v1.size()/2, v1.end()); vector<int> r1, r2; int lst = 0; for(int i=0; i<l1.size(); i++) lst = Query(l1[i]); for(int i=0; i<v2.size(); i++) { int nw = Query(v2[i]); if(bit) { if(nw == lst) r2.push_back(v2[i]); else lst = nw, r1.push_back(v2[i]); } else { if(nw == lst) r1.push_back(v2[i]); else lst = nw, r2.push_back(v2[i]); } } if(l1.size()) dc(l1, r1, 1-bit); if(l2.size()) dc(l2, r2, bit); } void Solve(int n) { int lst = 0; for(int i=1; i<=2*n; i++) { if(lst == Query(i)) vec1.push_back(i); else lst++, vec2.push_back(i); } dc(vec1, vec2, 1); }

Compilation message (stderr)

minerals.cpp: In function 'void dc(std::vector<int>, std::vector<int>, int)':
minerals.cpp:20:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0; i<l1.size(); i++) lst = Query(l1[i]);
               ~^~~~~~~~~~
minerals.cpp:21:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0; i<v2.size(); 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...