Submission #82657

#TimeUsernameProblemLanguageResultExecution timeMemory
82657arman_ferdousDetecting Molecules (IOI16_molecules)C++17
0 / 100
3 ms996 KiB
#include <bits/stdc++.h>
#include "molecules.h"
using namespace std;

vector<int> ret;
void get(int l, int r) {
	for(int i = l; i <= r; i++)
		ret.push_back(i);
}

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
	int n = w.size();
	sort(w.begin(),w.end());

	if(w[0] > u) return ret;
	long long x = 0, sum = w[0];
	while(x + 1 < n && sum + w[x + 1] < l) { sum += w[x+1]; x++; }

	if(x + 1 < n && sum + w[x + 1] <= u && sum + w[x + 1] >= l) {
		get(0,x+1);
		return ret;
	} 
	for(int i = x + 1; i < n; i++) {
		sum += w[i];
		sum -= w[i - x - 1];
		if(l <= sum && sum <= u) {
			get(i - x, i);
			return ret;
		}
	}
    return ret;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...