Submission #904008

#TimeUsernameProblemLanguageResultExecution timeMemory
904008zhasynDetecting Molecules (IOI16_molecules)C++14
100 / 100
40 ms5724 KiB
#include <bits/stdc++.h> using namespace std; #define pii pair<int, int> #define F first #define S second #define ll long long #define pb push_back const int N = 2 * 1e5 + 10; pii arr[N]; vector<int> find_subset(int l, int u, vector<int> w) { vector <int> ans; int n = (int)w.size(); for(int i = 0; i < n; i++){ arr[i] = {w[i], i}; } sort(arr, arr + n); int j = 0; ll sum = 0; for(int i = 0; i < n; i++){ sum += arr[i].F; while(sum > u){ sum -= arr[j].F; j++; } if(sum >= l && arr[i].F - arr[j].F <= u - l){ for(int k = j; k <= i; k++){ ans.pb(arr[k].S); } break; } } return ans; } // int main() { // ios_base::sync_with_stdio(false); // cin.tie(NULL); // int n, l, u; // cin >> n >> l >> u; // vector <int> to; // for(int i = 0, x; i < n; i++){ // cin >> x; // to.pb(x); // } // vector <int> k = find_subset(l, u, to); // for(auto u : k){ // cout << u << " "; // } // return 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...