Submission #1169249

#TimeUsernameProblemLanguageResultExecution timeMemory
1169249Szymon_PilipczukJelly Flavours (IOI20_jelly)C++20
14 / 100
63 ms888 KiB
#include <bits/stdc++.h> using namespace std; int find_maximum_unique(int x,int y,vector<int> a,vector<int> b) { sort(a.begin(),a.end()); int sm[a.size()]; int sp[a.size()]; sp[0] = a[0]; for(int i =1 ;i<a.size();i++) { sp[i] = sp[i-1]+a[i]; } vector<int> p ={x}; unordered_set<int> pe; int mn =x; for(int i =0 ;i<a.size();i++) { for(int j = 0;j<p.size();j++) { if(p[j] >= a[i] && pe.find(p[j]-a[i]) == pe.end()) { pe.insert(p[j]-a[i]); p.push_back(p[j]-a[i]); mn = min(mn,p[j]-a[i]); } } sm[i] = mn; } int l = 0; int r = a.size()+1; while(l+1 < r) { int mid = (l+r)/2; if(x-sm[mid-1] + y >= sp[mid-1]) { l = mid; } else { r = mid; } } return l; }
#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...