Submission #320634

#TimeUsernameProblemLanguageResultExecution timeMemory
320634Aryan_RainaDetecting Molecules (IOI16_molecules)C++14
69 / 100
1086 ms4716 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; typedef vector<int> vi; typedef pair<int, int> pi; #define F first #define S second #define PB push_back #define MP make_pair #define pop_front(v) v.erase(v.begin()) #define REP(i, a, b) for (int i=a; i<=b; i++) #define REPn(i, a, b) for (int i=a; i>=b; i--) #define FOR(i, n) REP(i, 0, n-1) #define FORn(j, n) REPn(j, n-1, 0) #define all(v) (v).begin(), (v).end() #define allR(v) (v).rbegin(), (v).rend() vi find_subset(int l, int u, vi w) { int n=w.size(); vector<pi> v(n); vector<ll> prefix(n); FOR(i,n) { v[i]={w[i],i}; } sort(all(v)); prefix[0]=v[0].F; REP(i,1,n-1) prefix[i]=prefix[i-1]+v[i].F; ll sum=0; FOR(i, n) { REP(j, i, n-1) { sum = prefix[j]-prefix[i]+v[i].F; if (l<=sum&&sum<=u) { vi ans={}; REP(ii, i, j) ans.PB(v[ii].S); return ans; } } } return {}; }
#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...