제출 #230982

#제출 시각아이디문제언어결과실행 시간메모리
230982peijarDetecting Molecules (IOI16_molecules)C++17
46 / 100
362 ms65540 KiB
#include <bits/stdc++.h> using namespace std; #define SZ(v) ((int)(v).size()) vector<int> find_subset(int l, int r, vector<int> weights) { int nb_poids = SZ(weights); vector<int> ans; vector<vector<bool> > can_reach(nb_poids, vector<bool>(r+1, false)); for (int id_poids(0); id_poids < nb_poids; ++id_poids) for (int want(0); want <= r; ++want) can_reach[id_poids][want] = (id_poids ? can_reach[id_poids-1][want] : false) or (id_poids and want >= weights[id_poids] ? can_reach[id_poids-1][want-weights[id_poids]] : !want or want==weights[id_poids]); for (int cur_weight(l); cur_weight <= r; ++cur_weight) if (can_reach[nb_poids-1][cur_weight]) { int cur_id = nb_poids - 1; while (cur_weight> 0) { if (!cur_id or !can_reach[cur_id-1][cur_weight]) { ans.push_back(cur_id); cur_weight -= weights[cur_id]; } --cur_id; } return ans; } 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...