Submission #906438

#TimeUsernameProblemLanguageResultExecution timeMemory
906438vjudge1Detecting Molecules (IOI16_molecules)C++17
69 / 100
3 ms860 KiB
#include "molecules.h" #include <bits/stdc++.h> using namespace std; using vi = vector<int>; using ii = pair<int, int>; vi find_subset(int l, int u, vi w) { vector<ii> V; for(int i = 0; i < int(w.size()); ++i) V.push_back({w[i], i}); sort(V.begin(), V.end()); int s = 0, d = -1, sum = 0, n = int(w.size()); while(d + 1 < n && sum + V[d + 1].first <= u) { sum += V[d + 1].first; ++d; } while(sum < l) { if(d + 1 < n) { sum += V[d + 1].first - V[s].first; ++d; ++s; } else break; } if(sum >= l && sum <= u) { vi re; for(int i = s; i <= d; ++i) { re.push_back(V[i].second); } return re; } return vi(); }
#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...