Submission #565046

#TimeUsernameProblemLanguageResultExecution timeMemory
565046MadokaMagicaFanDetecting Molecules (IOI16_molecules)C++14
Compilation error
0 ms0 KiB
#include "bits/stdc++.h" using namespace std; using ll = long long; const ll inf = 1e9; const int md1 = 1e9+7; #define all(v) v.begin(), v.end() #define rall(v) v.rbegin(), v.rend() #define sz(v) ((int)v.size()) #define forn(i,n) for(int i = 0; i < n; ++i) #define forbe(i,b,e) for(int i = b; i < e; ++i) #define pb push_back #define pry puts("YES") #define prn puts("NO") #define endl '\n' #define fst first #define scn second int find_subset(int *l) { return 0; } int find_subset(int l, int r, int* w, int n, int* result) { map<int,int> p; set<ll> vals; vals.insert(0); p[0] = -1; vector<ll> ws; ll ans = -1; for (int i = 0; i < n; ++i) { ws.clear(); for (auto u : vals) ws.pb(u+w[i]); for (auto u : ws) { if (vals.find(u) == vals.end()) p[u] = i; vals.insert(u); if (l <= u && r >= u){ ans = u; i = n; break; } } } if (ans == -1) return 0; int cnt = 0; while (p[ans] != -1) { result[cnt++] = p[ans]+1; ans = ans - w[p[ans]]; } return cnt; } #ifdef ONPC void solve() { const int N = 1e4; int n, l, r; cin >> n >> l >> r; int w[N]; for (int i = 0; i < n; ++i) cin >> w[i]; int result[N]; int ans = find_subset(l,r,w,n, result); cout << ans << endl; return; for (int i = 0; i < ans; ++i) { cout << w[result[i]-1] << ' '; } cout << endl; } int32_t main() { freopen("in", "r", stdin); int t = 1; cin >> t; while(t--) solve(); } #endif

Compilation message (stderr)

/usr/bin/ld: /tmp/ccrSg3et.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