Submission #99348

#TimeUsernameProblemLanguageResultExecution timeMemory
99348JustasLeDetecting Molecules (IOI16_molecules)C++17
100 / 100
65 ms6252 KiB
#include "molecules.h" #include <bits/stdc++.h> using namespace std; vector<int> find_subset(int mn, int mx, vector<int> w) { vector<int> ans; vector<pair<int, int>> a; int n = (int) w.size(); for (int i = 0; i < n; i++) { a.push_back({w[i], i}); } sort(a.begin(), a.end()); int l = 0, r = -1; long long sum = 0; while (r < n && sum < mn) { sum += a[++r].first; if (sum >= mn) { if (sum <= mx) { break; } while (l <= r && sum > mx) { sum -= a[l++].first; } } } if (sum >= mn && sum <= mx) { for (int i = l; i <= r; i++) { ans.push_back(a[i].second); } } 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...