Submission #88255

#TimeUsernameProblemLanguageResultExecution timeMemory
88255amiratouDetecting Molecules (IOI16_molecules)C++14
9 / 100
3 ms640 KiB
#include "molecules.h"
#include <bits/stdc++.h>
using namespace std;
vector<int> vec,ans;
bool used[200005];
unordered_map<long long,bool> mymap;
int n,L,R;
bool solve(long long sum,int idx){
	if(sum>R)
		return 0;
	if(sum>=L&&sum<=R){
		for (int i = 0; i < n; ++i)
		{
			if(used[i])
				ans.push_back(i);
		}
		return 1;
	}
	if(mymap.find(sum)!=mymap.end())
		return 0;
	for (int i = idx+1; i < n; ++i)
	{
		used[i]=1;
		if(solve(sum+vec[i],i))return 1;
		mymap[sum]=1;
		used[i]=0;
	}
	return 0;
}
std::vector<int> find_subset(int l, int u, std::vector<int> w) {
	n=w.size();
	L=l;R=u;
	vec=w;
  	sort(vec.begin(),vec.end());
	if(!solve(0,-1))
		return vector<int>(0);
    return ans;
}
#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...