제출 #1049553

#제출 시각아이디문제언어결과실행 시간메모리
1049553ymmLet's Win the Election (JOI22_ho_t3)C++17
10 / 100
10 ms472 KiB
#include <bits/stdc++.h> #define Loop(x,l,r) for (ll x = (l); x < (ll)(r); ++x) #define LoopR(x,l,r) for (ll x = (r)-1; x >= (ll)(l); --x) typedef long long ll; typedef std::pair<int, int> pii; typedef std::pair<ll , ll > pll; using namespace std; const ll inf = 1e15; int main() { cin.tie(0) -> sync_with_stdio(false); int n, k; cin >> n >> k; vector<pll> a(n); Loop (i,0,n) { cin >> a[i].second >> a[i].first; if (a[i].first == -1) a[i].first = inf; } double ans = inf; Loop (cnt,0,k) { ll c = 1; double sum = 0; sort(a.begin(), a.end()); if (cnt && a[cnt-1].first == inf) continue; Loop (i,0,cnt) { sum += (double)a[i].first / c; c++; } sort(a.begin() + cnt, a.end(), [](pll x, pll y) { return x.second < y.second; }); Loop (i,cnt,k) sum += (double)a[i].second / c; ans = min(ans, sum); } cout << fixed << setprecision(9); cout << ans << '\n'; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...