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>
#define ll long long
#define all(a) a.begin(),a.end()
#define mp make_pair
#define F first
#define S second
#define pii pair<int,int>
using namespace std;
vector<int> find_subset(int l , int r , vector<int> a){
int n = a.size() ;
vector<pii> w(n) ;
int sum = 0 ;
for(int i=0;i<n;i++){
w[i].F=a[i] ;
sum+=a[i] ;
w[i].S =i ;
}
sort(all(w)) ;
vector<int> poop ;
//for(int i=1;i<n;i++) w[i].F+=w[i-1].F ;
if(sum<l) return poop ;
if(w[0].F>r) return poop ;
int L = 0 , R= n-1 ;
while(1){
if(sum-w[R].F>r) sum-=w[R].F ,--R ;
else{
sum-=w[L].F ;
++L ;
}
if(L>R) return poop ;
if(sum>=l&&r>=sum){
vector<int> ans;
for(int i=L;i<=R;i++) ans.push_back(w[i].S) ;
return ans ;
}
}
// vector<int> poop ;
return poop ;
}
| # | 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... |