Submission #947057

#TimeUsernameProblemLanguageResultExecution timeMemory
947057onepunchac168Minerals (JOI19_minerals)C++14
40 / 100
27 ms3424 KiB
#include "minerals.h" #include <bits/stdc++.h> using namespace std; int query(int x) { return Query(x); } mt19937 mt(19779777); void solve(vector <int> need,bool check) { if (need.size()==2) { if (check==1) { int aa=query(need[0]); int bb=query(need[1]); } Answer(need[0],need[1]); return; } if (need.size()<=1) { assert(1==0); } shuffle (need.begin(),need.end(),mt); vector <int> aa,bb; int rr=need.size()/4; if (need.size()>=10) { rr=need.size()/6; } if (check==0) { for (int i=0;i<need.size();i++) { if (aa.size()==2*rr) { bb.push_back(need[i]); continue; } int a1=query(need[i]); //cout<<a1<<'\n'; if (a1<=rr) { aa.push_back(need[i]); } else { int a2=query(need[i]); bb.push_back(need[i]); } } solve(aa,1); solve(bb,0); } else { for (int i=rr;i<need.size();i++) { int a1=query(need[i]); } for (int i=0;i<rr;i++) { aa.push_back(need[i]); } for (int i=rr;i<need.size();i++) { if (aa.size()==2*rr) { bb.push_back(need[i]); continue; } int a1=query(need[i]); if (a1<=rr) { aa.push_back(need[i]); } else { int a2=query(need[i]); bb.push_back(need[i]); } } solve(aa,1); solve(bb,0); } } void Solve(int n) { vector <int > opt; for (int i=1;i<=2*n;i++) { opt.push_back(i); } solve(opt,0); }

Compilation message (stderr)

minerals.cpp: In function 'void solve(std::vector<int>, bool)':
minerals.cpp:16:17: warning: unused variable 'aa' [-Wunused-variable]
   16 |             int aa=query(need[0]);
      |                 ^~
minerals.cpp:17:17: warning: unused variable 'bb' [-Wunused-variable]
   17 |             int bb=query(need[1]);
      |                 ^~
minerals.cpp:35:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |         for (int i=0;i<need.size();i++)
      |                      ~^~~~~~~~~~~~
minerals.cpp:37:26: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   37 |             if (aa.size()==2*rr)
      |                 ~~~~~~~~~^~~~~~
minerals.cpp:50:21: warning: unused variable 'a2' [-Wunused-variable]
   50 |                 int a2=query(need[i]);
      |                     ^~
minerals.cpp:59:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   59 |         for (int i=rr;i<need.size();i++)
      |                       ~^~~~~~~~~~~~
minerals.cpp:61:17: warning: unused variable 'a1' [-Wunused-variable]
   61 |             int a1=query(need[i]);
      |                 ^~
minerals.cpp:67:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   67 |         for (int i=rr;i<need.size();i++)
      |                       ~^~~~~~~~~~~~
minerals.cpp:69:26: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   69 |             if (aa.size()==2*rr)
      |                 ~~~~~~~~~^~~~~~
minerals.cpp:81:21: warning: unused variable 'a2' [-Wunused-variable]
   81 |                 int a2=query(need[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...