Submission #105488

#TimeUsernameProblemLanguageResultExecution timeMemory
105488polyfishDetecting Molecules (IOI16_molecules)C++14
100 / 100
72 ms8296 KiB
//Pantyhose(black) + glasses = infinity #include <bits/stdc++.h> using namespace std; #define debug(x) cerr << #x << " = " << x << '\n'; #define BP() cerr << "OK!\n"; #define PR(A, n) {cerr << #A << " = "; for (int64_t _=1; _<=n; ++_) cerr << A[_] << ' '; cerr << '\n';} #define PR0(A, n) {cerr << #A << " = "; for (int64_t _=0; _<n; ++_) cerr << A[_] << ' '; cerr << '\n';} #define FILE_NAME "data" vector<int> find_subset(int L, int R, vector<int> w) { vector<pair<int64_t, int64_t> > a; int64_t l = L, r = R; for (int64_t i=0; i<w.size(); ++i) a.push_back({w[i], i}); sort(a.begin(), a.end()); for (int64_t i=0, head=-1, cur_sum=0; i<a.size(); ++i) { while (head+1<a.size() && cur_sum<l) cur_sum += a[++head].first; if (cur_sum>=l && cur_sum<=r) { vector<int> res; for (int j=i; j<=head; ++j) res.push_back(a[j].second); return res; } cur_sum -= a[i].first; } return {}; }

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:16:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int64_t i=0; i<w.size(); ++i)
                    ~^~~~~~~~~
molecules.cpp:21:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int64_t i=0, head=-1, cur_sum=0; i<a.size(); ++i) {
                                        ~^~~~~~~~~
molecules.cpp:22:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   while (head+1<a.size() && cur_sum<l)
          ~~~~~~^~~~~~~~~
#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...