Submission #572779

#TimeUsernameProblemLanguageResultExecution timeMemory
572779jasminDetecting Molecules (IOI16_molecules)C++14
Compilation error
0 ms0 KiB
#include<bits/stdc++.h> #include<molecules.h> using namespace std; #define int long long void reconstruct(int x, int i, vector<vector<int> >& last, vector<int>& w, vector<int>& ans){ while(0<x){ ans.push_back(last[x][i]); int x2=x; x-=w[last[x][i]]; i=last[x2][i]; } } vector<int> find_subset(int l, int r, vector<int> w){ int n=w.size(); vector<vector<bool> > dp(r+1, vector<bool> (n+1)); vector<vector<int> > last(r+1, vector<int> (n+1, -1)); dp[0][0]=true; for(int x=0; x<=r; x++){ for(int i=0; i<n; i++){ if(!dp[x][i]) continue; dp[x][i+1]=true; last[x][i+1]=last[x][i]; if(x+w[i]<=r){ dp[x+w[i]][i+1]=true; last[x+w[i]][i+1]=i; } } } vector<int> ans; for(int i=l; i<=r; i++){ if(dp[i][n]){ reconstruct(i, n, last, w, ans); break; } } return ans; } /*signed main(){ ios_base::sync_with_stdio(false); cin.tie(0); int l, r; cin >> l >> r; int n; cin >> n; vector<int> w(n); for(int i=0; i<n; i++){ cin >> w[i]; } vector<int> ans=find_subset(l, r, w); for(auto e: ans){ cout << e << " "; } cout << "\n"; }*/

Compilation message (stderr)

/usr/bin/ld: /tmp/ccR3FaHQ.o: in function `main':
grader.cpp:(.text.startup+0x18d): undefined reference to `find_subset(int, int, std::vector<int, std::allocator<int> >)'
collect2: error: ld returned 1 exit status