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 <bits/stdc++.h>
#include "molecules.h"
using namespace std;
using ll = long long;
struct mol{
int ind;
int val;
};
bool cmp(mol A, mol B){
return A.val<B.val;
}
vector<int> find_subset(int l, int u, std::vector<int> w) {
int r=u;
int n=w.size();
mol a[n];
for(int i=0; i< n; i++){
a[i].ind=i;
a[i].val=w[i];
}
sort(a, a+n, cmp);
int p1=0;
ll sum=0;
for(int i=0; i< n; i++){
sum+=a[i].val;
if(sum>=l && sum<=r){
vector<int> ret;
for(int j=p1; j<=i; j++){
ret.push_back(a[j].ind);
}
return ret;
}
else if(sum>r){
sum-=a[p1].val;
p1++;
if(sum>=l && sum<=r){
vector<int> ret;
for(int j=p1; j<=i; j++){
ret.push_back(a[j].ind);
}
return ret;
}
}
}
return 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... |