Submission #879627

#TimeUsernameProblemLanguageResultExecution timeMemory
879627charleehpDetecting Molecules (IOI16_molecules)C++14
100 / 100
43 ms5680 KiB
#include "molecules.h" #include <algorithm> using namespace std; void fillRange(int a, int b, vector< pair<int, int> > &W, vector<int> &ans) { for (; a < b; a++) { ans.push_back(W[a].second); } } std::vector<int> find_subset(int l, int u, std::vector<int> w) { int n = w.size(); vector< pair<int, int> > W(n); for (int i = 0; i < n; i++) { W[i] = make_pair(w[i], i); } sort(W.begin(), W.end()); vector<int> ans(0); long long sum = W[0].first; int j = 1; for (int i = 0; i < n; i++) { while (sum < l && j < n) { sum += (long long)W[j].first; j++; } if (l <= sum && sum <= u) { fillRange(i, j, W, ans); return ans; } sum -= (long long)W[i].first; } return std::vector<int>(0); }
#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...