Submission #403079

#TimeUsernameProblemLanguageResultExecution timeMemory
403079LoboDetecting Molecules (IOI16_molecules)C++17
100 / 100
57 ms6184 KiB
#include <bits/stdc++.h> #include "molecules.h" using namespace std; const long long INFll = 1e18; const int INFii = 1e9; const long long mod = (long long) 1e9 + 7; typedef long long ll; typedef int ii; typedef double dbl; #define endl '\n' #define sc second #define fr first #define mp make_pair #define pb push_back #define maxn 3300 //LEMBRAR DE MUDAR vector<int> find_subset(int l, int u, vector<int> w) { vector<pair<ii,ii>> W; ii n = w.size(); for(ii i = 0; i < n; i++) { W.pb(mp(w[i],i)); } sort(W.begin(), W.end()); ii l1 = 0; ii r1 = 0; ll sum = W[0].fr; ii ans1 = -1; ii ans2 = -1; while(r1 < n && l1 <= r1) { if(sum > u) { sum-= (ll) W[l1].fr; l1++; } else if(sum < l) { r1++; sum+= (ll) W[r1].fr; } else { ans1 = l1; ans2 = r1; break; } } vector<ii> ans; if(ans1 != -1) { for(ii i = ans1; i <= ans2; i++) { ans.pb(W[i].sc); } sort(ans.begin(),ans.end()); } 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...