Submission #160004

#TimeUsernameProblemLanguageResultExecution timeMemory
160004BertedDetecting Molecules (IOI16_molecules)C++14
100 / 100
81 ms8424 KiB
#include "molecules.h" #include <iostream> #include <algorithm> #define ll long long #define pii pair<ll,ll> #define fst first #define snd second #define pub push_back using namespace std; vector<pii> dt; vector<int> rs; vector<int> find_subset(int l, int u, vector<int> w) { dt.push_back({0,-1}); for (int i=0;i<w.size();i++) {dt.push_back({w[i],i});} sort(dt.begin(),dt.end()); if (dt.back().fst>=l) { auto it = lower_bound(dt.begin(),dt.end(),make_pair((ll)l,(ll)0)); if (it->fst <= u) {rs.push_back(it->snd);} } else { for (int i=1;i<=w.size();i++) { dt[i].fst += dt[i-1].fst; } for (int i=0;i<=w.size();i++) { auto it = lower_bound(dt.begin(),dt.end(),make_pair(l+dt[i].fst,(ll)0)); if (it!=dt.end()) { if (it->fst <= u + dt[i].fst) { int idx = it - dt.begin(); for (int j=i+1;j<=idx;j++) { rs.push_back(dt[j].snd); } break; } } else {break;} } } return rs; }

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:14:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i=0;i<w.size();i++) {dt.push_back({w[i],i});}
                  ~^~~~~~~~~
molecules.cpp:23:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
      for (int i=1;i<=w.size();i++)
                   ~^~~~~~~~~~
molecules.cpp:27:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
      for (int i=0;i<=w.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...