Submission #843222

#TimeUsernameProblemLanguageResultExecution timeMemory
843222Mr_HusanboyDetecting Molecules (IOI16_molecules)C++17
9 / 100
1 ms600 KiB
#include <bits/stdc++.h> #include "molecules.h" using namespace std; template<typename T> int len(T &a){return a.size();} vector<int> find_subset(int l, int u, vector<int> w) { int n = len(w); vector<int> dp(u + 1); dp[0] = 1; vector<int> par(u + 1); sort(w.begin(), w.end()); for(int i = 0; i < n; i ++){ for(int j = u; j >= w[i]; j --){ if(!dp[j] && dp[j - w[i]]){ par[j] = i; dp[j] = 1; //if(l<=j && j<=u){i = n; break;} } } } int yes = -1; for(int i = l; i <= u; i ++) if(dp[i]) yes = i; if(yes == -1) return {}; vector<int> ans; while(yes != 0){ ans.push_back(par[yes]); yes -= w[par[yes]]; } reverse(ans.begin(), ans.end()); 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...