Submission #931412

#TimeUsernameProblemLanguageResultExecution timeMemory
931412mariaclaraDetecting Molecules (IOI16_molecules)C++17
100 / 100
52 ms7252 KiB
#include "molecules.h" #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int,int> pii; const int MAXN = 1e5+5; #define all(x) x.begin(), x.end() #define mk make_pair #define pb push_back #define f first #define s second vector<int> find_subset(int l, int u, vector<int> w) { int n = w.size(), t = n; ll sum = 0; vector<ll> prefix(n+1, 0); vector<pii> v(n); for(int i = 0; i < n; i++) v[i] = {w[i], i}; sort(all(w)); sort(all(v)); for(int i = 1; i <= n; i++) prefix[i] = w[i-1] + prefix[i-1]; for(int i = 0; i < n; i++) { sum += w[i]; if(sum > u) { t = i; break; } } for(int i = 0; i <= n-t; i++) { if(u >= prefix[i+t] - prefix[i] and prefix[i+t] - prefix[i] >= l) { vector<int> resp; for(int j = i; j < i+t; j++) resp.pb(v[j].s); return resp; } } 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...