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;
vector<int> find_subset(int left, int right, vector<int> w){
int n=w.size();
vector<pair<int,int> > a(n);
for(int i=0; i<n; i++){
a[i]={w[i], i};
}
sort(a.begin(), a.end());
int l=0; int r=0;
long long sum=a[0].first;
while(l<=r && r<n){
if(left<=sum && sum<=right){
vector<int> ans;
for(int i=l; i<=r; i++){
ans.push_back(a[i].second);
}
return ans;
}
if(right<sum){
sum-=a[l].first;
l++;
}
else{
r++;
sum+=a[r].first;
}
}
return {};
}
/*signed main(){
int n;
cin >> n;
int l, r;
cin >> l >> r;
vector<int> a(n);
for(int i=0; i<n; i++){
cin >> a[i];
}
vector<int> ans=find_subset(l, r, a);
for(auto e: ans){
cout << e << " ";
}
cout << "\n";
}*/
# | 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... |