| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 206351 | TAISA_ | Detecting Molecules (IOI16_molecules) | C++14 | 72 ms | 8800 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 "molecules.h"
#include <bits/stdc++.h>
#define all(v) v.begin(),v.end()
#define eb emplace_back
using namespace std;
using ll=long long;
using P=pair<ll,ll>;
std::vector<int> find_subset(int l, int u, std::vector<int> w) {
	vector<P> ws;
	for(int i=0;i<w.size();i++){
		ws.eb(w[i],i);
	}
	sort(all(ws));
	int n=w.size();
	vector<ll> sum(n+1);
	for(int i=0;i<n;i++){
		sum[i+1]=sum[i]+ws[i].first;
	}
	for(ll k=1;k<=n;k++){
		ll mi=sum[k],ma=sum[n]-sum[n-k];
		if(l<=ma&&mi<=u){
			if(ma<=u){
				vector<int> v;
				for(int j=n-k;j<n;j++){
					v.eb(ws[j].second);
				}
				return v;
			}
			ll s=mi;
			for(int i=k;i<n;i++){
				if(l<=s&&s<=u){
					vector<int> v;
					for(int j=i-k;j<i;j++){
						v.eb(ws[j].second);
					}
					return v;
				}
				s+=ws[i].first-ws[i-k].first;
			}
		}
	}
	return vector<int>(0);
}
Compilation message (stderr)
| # | 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... | ||||
