Submission #977964

#TimeUsernameProblemLanguageResultExecution timeMemory
977964kilkuwuDetecting Molecules (IOI16_molecules)C++17
100 / 100
36 ms4812 KiB
#include "molecules.h" #include <bits/stdc++.h> std::vector<int> find_subset(int l, int u, std::vector<int> w) { // W_max - W_min <= u - l int n = w.size(); std::vector<int> ord(n); std::iota(ord.begin(), ord.end(), 0); std::sort(ord.begin(), ord.end(), [&](int i, int j) { return w[i] < w[j]; }); if (w[ord[0]] > u) return {}; int64_t sum = 0; int j = 0; for (int i = 0; i < n; i++) { sum += w[ord[i]]; while (sum > u) { sum -= w[ord[j]]; j++; } if (sum >= l) { return std::vector(ord.begin() + j, ord.begin() + i + 1); } } return {}; }
#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...