Submission #1258971

#TimeUsernameProblemLanguageResultExecution timeMemory
1258971kawhietRice Hub (IOI11_ricehub)C++20
17 / 100
1 ms328 KiB
#include "ricehub.h" #include <bits/stdc++.h> using namespace std; int besthub(int n, int m, int arr[], long long k) { vector<int> a(n); for (int i = 0; i < n; i++) { a[i] = arr[i]; } int res = 0; for (int i = 0; i < n; i++) { multiset<int> s{a.begin(), a.end()}; s.erase(s.find(a[i])); long long cur = 0; int cnt = 0; while (cur <= k) { cnt++; auto it1 = s.upper_bound(a[i]); auto it2 = it1; if (it1 == s.end()) { it1--; cur += abs(a[i] - *it1); s.erase(it1); } else if (it1 == s.begin()) { cur += abs(a[i] - *it1); s.erase(it1); } else { it1--; if (abs(a[i] - *it1) < abs(a[i] - *it2)) { assert(!s.empty()); s.erase(it1); cur += abs(a[i] - *it1); } else { assert(!s.empty()); s.erase(it2); cur += abs(a[i] - *it2); } } } res = max(res, cnt); } return res; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...