This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#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 time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |