# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
747942 | 2023-05-25T08:01:22 Z | MilosMilutinovic | Let's Win the Election (JOI22_ho_t3) | C++14 | 778 ms | 8268 KB |
#include <bits/stdc++.h> using namespace std; #define ldb long double const int N = 505; int n, k, a[N], b[N], ord[N]; ldb dp[N][N], ndp[N][N]; bool cmp(int i, int j) { int si = a[i] + (b[i] == -1 ? 1e8 : b[i]); int sj = a[j] + (b[j] == -1 ? 1e8 : b[j]); if (si != sj) return si < sj; else return a[i] > a[j]; } int main() { scanf("%d%d", &n, &k); for (int i = 1; i <= n; i++) scanf("%d%d", &a[i], &b[i]), b[i] = (b[i] == -1 ? -1 : b[i] - a[i]); for (int i = 1; i <= n; i++) ord[i] = i; sort(ord + 1, ord + n + 1, cmp); for (int i = 0; i <= n + 1; i++) for (int j = 0; j <= n + 1; j++) dp[i][j] = 1e9; dp[0][1] = 0; for (int _i = 1; _i <= n; _i++) { int i = ord[_i]; for (int j = 0; j <= n + 1; j++) for (int l = 0; l <= n + 1; l++) ndp[j][l] = dp[j][l]; for (int j = 0; j <= n + 1; j++) { for (int l = 0; l <= n + 1; l++) { if (ndp[j][l] > 1e8) continue; dp[j + 1][l] = min(dp[j + 1][l], ndp[j][l] + (ldb) (a[i] + 0.0) / l); if (b[i] != -1) dp[j + 1][l + 1] = min(dp[j + 1][l + 1], ndp[j][l] + (ldb) (a[i] + b[i] + 0.0) / l); } } } ldb ans = 1e9; for (int i = 0; i <= n + 1; i++) ans = min(ans, dp[k][i]); printf("%.3Lf", ans); return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 0 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 340 KB | Output is correct |
5 | Correct | 465 ms | 8232 KB | Output is correct |
6 | Correct | 452 ms | 8228 KB | Output is correct |
7 | Correct | 439 ms | 8228 KB | Output is correct |
8 | Correct | 464 ms | 8148 KB | Output is correct |
9 | Correct | 441 ms | 8236 KB | Output is correct |
10 | Correct | 436 ms | 8224 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 0 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 340 KB | Output is correct |
5 | Correct | 465 ms | 8232 KB | Output is correct |
6 | Correct | 452 ms | 8228 KB | Output is correct |
7 | Correct | 439 ms | 8228 KB | Output is correct |
8 | Correct | 464 ms | 8148 KB | Output is correct |
9 | Correct | 441 ms | 8236 KB | Output is correct |
10 | Correct | 436 ms | 8224 KB | Output is correct |
11 | Correct | 0 ms | 340 KB | Output is correct |
12 | Correct | 755 ms | 8224 KB | Output is correct |
13 | Correct | 603 ms | 8228 KB | Output is correct |
14 | Correct | 502 ms | 8232 KB | Output is correct |
15 | Correct | 691 ms | 8228 KB | Output is correct |
16 | Correct | 581 ms | 8228 KB | Output is correct |
17 | Correct | 493 ms | 8148 KB | Output is correct |
18 | Correct | 702 ms | 8224 KB | Output is correct |
19 | Correct | 682 ms | 8228 KB | Output is correct |
20 | Correct | 491 ms | 8268 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
2 | Correct | 1 ms | 340 KB | Output is correct |
3 | Correct | 1 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 340 KB | Output is correct |
5 | Correct | 0 ms | 340 KB | Output is correct |
6 | Correct | 0 ms | 340 KB | Output is correct |
7 | Correct | 1 ms | 340 KB | Output is correct |
8 | Correct | 0 ms | 340 KB | Output is correct |
9 | Incorrect | 0 ms | 340 KB | Output isn't correct |
10 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
2 | Correct | 1 ms | 340 KB | Output is correct |
3 | Correct | 1 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 340 KB | Output is correct |
5 | Correct | 0 ms | 340 KB | Output is correct |
6 | Correct | 0 ms | 340 KB | Output is correct |
7 | Correct | 1 ms | 340 KB | Output is correct |
8 | Correct | 0 ms | 340 KB | Output is correct |
9 | Incorrect | 0 ms | 340 KB | Output isn't correct |
10 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
2 | Correct | 1 ms | 340 KB | Output is correct |
3 | Correct | 1 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 340 KB | Output is correct |
5 | Correct | 0 ms | 340 KB | Output is correct |
6 | Correct | 0 ms | 340 KB | Output is correct |
7 | Correct | 1 ms | 340 KB | Output is correct |
8 | Correct | 0 ms | 340 KB | Output is correct |
9 | Incorrect | 0 ms | 340 KB | Output isn't correct |
10 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 778 ms | 8224 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 0 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 340 KB | Output is correct |
5 | Correct | 465 ms | 8232 KB | Output is correct |
6 | Correct | 452 ms | 8228 KB | Output is correct |
7 | Correct | 439 ms | 8228 KB | Output is correct |
8 | Correct | 464 ms | 8148 KB | Output is correct |
9 | Correct | 441 ms | 8236 KB | Output is correct |
10 | Correct | 436 ms | 8224 KB | Output is correct |
11 | Correct | 0 ms | 340 KB | Output is correct |
12 | Correct | 755 ms | 8224 KB | Output is correct |
13 | Correct | 603 ms | 8228 KB | Output is correct |
14 | Correct | 502 ms | 8232 KB | Output is correct |
15 | Correct | 691 ms | 8228 KB | Output is correct |
16 | Correct | 581 ms | 8228 KB | Output is correct |
17 | Correct | 493 ms | 8148 KB | Output is correct |
18 | Correct | 702 ms | 8224 KB | Output is correct |
19 | Correct | 682 ms | 8228 KB | Output is correct |
20 | Correct | 491 ms | 8268 KB | Output is correct |
21 | Correct | 1 ms | 340 KB | Output is correct |
22 | Correct | 1 ms | 340 KB | Output is correct |
23 | Correct | 1 ms | 340 KB | Output is correct |
24 | Correct | 0 ms | 340 KB | Output is correct |
25 | Correct | 0 ms | 340 KB | Output is correct |
26 | Correct | 0 ms | 340 KB | Output is correct |
27 | Correct | 1 ms | 340 KB | Output is correct |
28 | Correct | 0 ms | 340 KB | Output is correct |
29 | Incorrect | 0 ms | 340 KB | Output isn't correct |
30 | Halted | 0 ms | 0 KB | - |