Submission #624443

#TimeUsernameProblemLanguageResultExecution timeMemory
624443QwertyPiLet's Win the Election (JOI22_ho_t3)C++14
0 / 100
1 ms308 KiB
#include <bits/stdc++.h> using namespace std; const int N = 513; int a[N], b[N], s[N]; struct Pair{ int a, b; Pair() = default; Pair(int _a, int _b) : a(_a), b(_b){}; }; vector<Pair> vp; int main(){ int n, k; cin >> n >> k; for(int i = 0; i < n; i++){ cin >> a[i] >> b[i]; vp.push_back({a[i], b[i] == -1 ? 1e9 : b[i]}); } sort(vp.begin(), vp.end(), [](Pair x, Pair y){ return x.b < y.b; }); for(int i = 0; i < n; i++){ s[i + 1] = s[i] + vp[i].a; } long double ans = 1e9; for(int i = 0; i <= k; i++){ long double res = 0; for(int j = 0; j < i; j++){ res += (long double) vp[j].b / (j + 1); } res += (long double) (s[k] - s[i]) / (i + 1); ans = min(ans, res); } cout << fixed << setprecision(15) << ans << endl; }

Compilation message (stderr)

Main.cpp: In function 'int main()':
Main.cpp:21:34: warning: narrowing conversion of '((b[i] == -1) ? 1.0e+9 : (double)b[i])' from 'double' to 'int' [-Wnarrowing]
   21 |   vp.push_back({a[i], b[i] == -1 ? 1e9 : b[i]});
      |                       ~~~~~~~~~~~^~~~~~~~~~~~
#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...