Submission #156528

#TimeUsernameProblemLanguageResultExecution timeMemory
156528a_playerDetecting Molecules (IOI16_molecules)C++14
19 / 100
2 ms412 KiB
#include <bits/stdc++.h>

#define f first
#define s second
#define mp make_pair
#define pb push_back

using namespace std;

typedef long long ll;

int dp[10001];

vector<int> find_subset(int l,int u,vector<int> w){
	
	dp[0]=1;
	for(int i=0;i<w.size();i++)
	for(int j=u;j>=w[i];j--)if(dp[j-w[i]])dp[j]=1;
	int pos=-1;
		for(int i=l;i<=u;i++)if(dp[i])pos=i;
  vector<int> sol;
		if(pos==-1){
			return sol;
			}	
		for(int i=w.size()-1;i>=0;i--)if(pos-w[i]>=0)if(dp[pos-w[i]]){
			pos-=w[i];
			sol.push_back(i);
		}
		
		
	return sol;
}

Compilation message (stderr)

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:17:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<w.size();i++)
              ~^~~~~~~~~
#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...