# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
972281 | vjudge1 | Detecting Molecules (IOI16_molecules) | C++17 | 0 ms | 0 KiB |
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>
using namespace std;
#define int long long
#define double long double
#define pon ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL); int T=1;
#define ponchik signed main
#define pb push_back
#define pf push_front
#define endl "\n"
#define F first
#define S second
const int N=1e5+69,INF=1e18+1488;
vector<int>find_subset (int l, int u, vector<int> w) {
// freopen( "###.in" ,"r",stdin); freopen( "###.out" ,"w",stdout);
// cin>>T;
int n=(int)w.size(),a=l,b=u;
sort(w.begin(),w.end());
int l1=0,r=0,sum=w[0];
vector <int> ans;
while (l1<=r&&l<n)
{
if (sum>=a&&sum<=b)
{
for (int i=l1; i<=r; i++) ans.pb(w[i]);
return ans;
}
if (sum+w[r+1]<a) r++,sum+=w[r];
else if (sum+w[r+1]>b) l1++,sum-=w[l1-1];
}
return ans;
}