Submission #472834

#TimeUsernameProblemLanguageResultExecution timeMemory
472834Valaki2Detecting Molecules (IOI16_molecules)C++14
100 / 100
64 ms7136 KiB
#include "molecules.h" #include <bits/stdc++.h> using namespace std; #define ll long long #define left left123 #define riht right123 #define fi first #define se second vector<int> find_subset(int l, int u, vector<int> w) { int n = w.size(); ll mini = l, maxi = u; vector<pair<ll, int> > v(n); for(int i = 0; i < n; ++i) { v[i].fi = w[i]; v[i].se = i; } sort(v.begin(), v.end()); ll left = 0, right = 0; ll cur_sum = 0; while(left < n) { while(right < n && cur_sum + v[right].fi <= maxi) { cur_sum += v[right].fi; ++right; } if(cur_sum >= mini) { vector<int> result; for(int i = left; i < right; ++i) result.push_back(v[i].se); return result; } cur_sum -= v[left].fi; ++left; } return vector<int> (0); }
#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...