Submission #94568

#TimeUsernameProblemLanguageResultExecution timeMemory
94568wxh010910Detecting Molecules (IOI16_molecules)C++17
9 / 100
2 ms504 KiB
#include <bits/stdc++.h> #include "molecules.h" using namespace std; vector<int> find_subset(int l, int u, vector<int> w) { int n = w.size(); vector<int> p(n); for (int i = 0; i < n; ++i) { p[i] = i; } sort(p.begin(), p.end(), [&](const int &x, const int &y) { return w[x] < w[y]; }); long long prefix = 0, suffix = 0; for (int i = 0; i < n; ++i) { suffix += w[p[i]]; } for (int i = 0, j = 0; i < n; ++i) { if (prefix > u) { break; } while (prefix + suffix > u || j < i) { suffix -= w[p[j++]]; } if (prefix + suffix >= l) { vector<int> ans; for (int k = 0; k < i; ++k) { ans.push_back(p[k]); } for (int k = j; k < n; ++k) { ans.push_back(p[k]); } return ans; } } return vector<int>(); }
#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...