Submission #320631

#TimeUsernameProblemLanguageResultExecution timeMemory
320631Aryan_RainaDetecting Molecules (IOI16_molecules)C++14
9 / 100
1 ms364 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); FOR(i,n) v[i]={w[i],i}; sort(all(v)); int i=0,j=0; ll sum=v[0].F; while (!(sum<=u&&sum>=l)) { if (sum>u) { if (i>=n-1) return {}; sum-=v[i].F; i++; } if (sum<u) { if (j>=n-1) return {}; j++; sum+=v[j].F; } } vi ans={}; REP(kk, i, j) { ans.PB(v[kk].S); } 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...