Submission #543250

#TimeUsernameProblemLanguageResultExecution timeMemory
543250OlympiaSure Bet (CEOI17_sure)C++17
0 / 100
0 ms212 KiB
#include <vector> #include <algorithm> #include <iostream> #include <set> #include <cmath> #include <map> #include <random> #include <cassert> #include <ctime> #include <cstdlib> #include <queue> #include <limits.h> using namespace std; int main () { int N; cin >> N; vector<double> a(N), b(N); for (int i = 0; i < N; i++) { cin >> a[i] >> b[i]; } sort(a.begin(), a.end()), reverse(a.begin(), a.end()); sort(b.begin(), b.end()), reverse(b.begin(), b.end()); vector<double> pref_a(N + 1), pref_b(N + 1); pref_a[0] = pref_b[0] = 0; for (int i = 1; i <= N; i++) { pref_a[i] = pref_a[i - 1] + a[i - 1]; pref_b[i] = pref_b[i - 1] + b[i - 1]; } double ansr = 0; for (int i = 0; i <= N; i++) { for (int j = 0; j <= N; j++) { double ans = min(pref_a[i] - i - j, pref_b[j] - i - j); ansr = max(ansr, ans); } } cout << ansr; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...