# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
773397 | 2023-07-05T04:10:01 Z | Jomnoi | Shortcut (IOI16_shortcut) | C++17 | 2000 ms | 1620 KB |
#include <bits/stdc++.h> #include "shortcut.h" using namespace std; const int MAX_N = 6005; const long long INF = 1e18 + 7; int n; multiset <pair <int, int>> graph[MAX_N]; long long dist[MAX_N][MAX_N]; bool visited[MAX_N]; void bfs(int s) { for (int i = 0; i < 2 * n; i++) { dist[s][i] = INF; visited[i] = false; } priority_queue <pair <long long, int>> pq; pq.emplace(0, s); dist[s][s] = 0; while (!pq.empty()) { auto [d, u] = pq.top(); pq.pop(); if (visited[u] == true) continue; visited[u] = true; for (auto [v, w] : graph[u]) { if (visited[v] == false and dist[s][u] + w < dist[s][v]) { dist[s][v] = dist[s][u] + w; pq.emplace(-dist[s][v], v); } } } } long long find_shortcut(int n, vector <int> l, vector <int> d, int c) { ::n = n; for (int i = 0; i < n - 1; i++) { graph[i].emplace(i + 1, l[i]); graph[i + 1].emplace(i, l[i]); } for (int i = 0; i < n; i++) { graph[i].emplace(n + i, d[i]); graph[n + i].emplace(i, d[i]); } long long ans = INF; for (int i = 0; i < n; i++) { for (int j = i + 1; j < n; j++) { graph[i].emplace(j, c); graph[j].emplace(i, c); for (int i = 0; i < 2 * n; i++) bfs(i); long long max_dist = 0; for (int i = 0; i < 2 * n; i++) { for (int j = 0; j < 2 * n; j++) max_dist = max(max_dist, dist[i][j]); } ans = min(ans, max_dist); graph[i].erase(graph[i].lower_bound(make_pair(j, c))); graph[j].erase(graph[j].lower_bound(make_pair(i, c))); } } return ans; }
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | n = 4, 80 is a correct answer |
2 | Correct | 1 ms | 556 KB | n = 9, 110 is a correct answer |
3 | Correct | 1 ms | 596 KB | n = 4, 21 is a correct answer |
4 | Correct | 1 ms | 596 KB | n = 3, 4 is a correct answer |
5 | Correct | 0 ms | 596 KB | n = 2, 62 is a correct answer |
6 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
7 | Correct | 0 ms | 596 KB | n = 3, 29 is a correct answer |
8 | Correct | 1 ms | 596 KB | n = 2, 3 is a correct answer |
9 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
10 | Correct | 0 ms | 596 KB | n = 2, 2000000001 is a correct answer |
11 | Correct | 0 ms | 596 KB | n = 2, 3000000000 is a correct answer |
12 | Correct | 1 ms | 596 KB | n = 3, 3000000000 is a correct answer |
13 | Correct | 0 ms | 596 KB | n = 3, 3000000000 is a correct answer |
14 | Correct | 0 ms | 596 KB | n = 4, 3000000001 is a correct answer |
15 | Correct | 1 ms | 532 KB | n = 4, 4000000000 is a correct answer |
16 | Correct | 0 ms | 596 KB | n = 5, 4000000000 is a correct answer |
17 | Correct | 1 ms | 596 KB | n = 10, 1000000343 is a correct answer |
18 | Correct | 1 ms | 596 KB | n = 10, 3189 is a correct answer |
19 | Correct | 1 ms | 608 KB | n = 10, 7000000000 is a correct answer |
20 | Correct | 0 ms | 596 KB | n = 5, 12 is a correct answer |
21 | Correct | 1 ms | 596 KB | n = 5, 25 is a correct answer |
22 | Correct | 1 ms | 596 KB | n = 2, 122 is a correct answer |
23 | Correct | 1 ms | 596 KB | n = 10, 117 is a correct answer |
24 | Correct | 1 ms | 596 KB | n = 10, 336 is a correct answer |
25 | Correct | 1 ms | 596 KB | n = 10, 438 is a correct answer |
26 | Correct | 1 ms | 596 KB | n = 10, 206 is a correct answer |
27 | Correct | 1 ms | 596 KB | n = 10, 636 is a correct answer |
28 | Correct | 0 ms | 596 KB | n = 4, 2399 is a correct answer |
29 | Correct | 1 ms | 596 KB | n = 10, 10992 is a correct answer |
30 | Correct | 1 ms | 596 KB | n = 10, 3112 is a correct answer |
31 | Execution timed out | 2089 ms | 1620 KB | Time limit exceeded |
32 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | n = 4, 80 is a correct answer |
2 | Correct | 1 ms | 556 KB | n = 9, 110 is a correct answer |
3 | Correct | 1 ms | 596 KB | n = 4, 21 is a correct answer |
4 | Correct | 1 ms | 596 KB | n = 3, 4 is a correct answer |
5 | Correct | 0 ms | 596 KB | n = 2, 62 is a correct answer |
6 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
7 | Correct | 0 ms | 596 KB | n = 3, 29 is a correct answer |
8 | Correct | 1 ms | 596 KB | n = 2, 3 is a correct answer |
9 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
10 | Correct | 0 ms | 596 KB | n = 2, 2000000001 is a correct answer |
11 | Correct | 0 ms | 596 KB | n = 2, 3000000000 is a correct answer |
12 | Correct | 1 ms | 596 KB | n = 3, 3000000000 is a correct answer |
13 | Correct | 0 ms | 596 KB | n = 3, 3000000000 is a correct answer |
14 | Correct | 0 ms | 596 KB | n = 4, 3000000001 is a correct answer |
15 | Correct | 1 ms | 532 KB | n = 4, 4000000000 is a correct answer |
16 | Correct | 0 ms | 596 KB | n = 5, 4000000000 is a correct answer |
17 | Correct | 1 ms | 596 KB | n = 10, 1000000343 is a correct answer |
18 | Correct | 1 ms | 596 KB | n = 10, 3189 is a correct answer |
19 | Correct | 1 ms | 608 KB | n = 10, 7000000000 is a correct answer |
20 | Correct | 0 ms | 596 KB | n = 5, 12 is a correct answer |
21 | Correct | 1 ms | 596 KB | n = 5, 25 is a correct answer |
22 | Correct | 1 ms | 596 KB | n = 2, 122 is a correct answer |
23 | Correct | 1 ms | 596 KB | n = 10, 117 is a correct answer |
24 | Correct | 1 ms | 596 KB | n = 10, 336 is a correct answer |
25 | Correct | 1 ms | 596 KB | n = 10, 438 is a correct answer |
26 | Correct | 1 ms | 596 KB | n = 10, 206 is a correct answer |
27 | Correct | 1 ms | 596 KB | n = 10, 636 is a correct answer |
28 | Correct | 0 ms | 596 KB | n = 4, 2399 is a correct answer |
29 | Correct | 1 ms | 596 KB | n = 10, 10992 is a correct answer |
30 | Correct | 1 ms | 596 KB | n = 10, 3112 is a correct answer |
31 | Execution timed out | 2089 ms | 1620 KB | Time limit exceeded |
32 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | n = 4, 80 is a correct answer |
2 | Correct | 1 ms | 556 KB | n = 9, 110 is a correct answer |
3 | Correct | 1 ms | 596 KB | n = 4, 21 is a correct answer |
4 | Correct | 1 ms | 596 KB | n = 3, 4 is a correct answer |
5 | Correct | 0 ms | 596 KB | n = 2, 62 is a correct answer |
6 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
7 | Correct | 0 ms | 596 KB | n = 3, 29 is a correct answer |
8 | Correct | 1 ms | 596 KB | n = 2, 3 is a correct answer |
9 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
10 | Correct | 0 ms | 596 KB | n = 2, 2000000001 is a correct answer |
11 | Correct | 0 ms | 596 KB | n = 2, 3000000000 is a correct answer |
12 | Correct | 1 ms | 596 KB | n = 3, 3000000000 is a correct answer |
13 | Correct | 0 ms | 596 KB | n = 3, 3000000000 is a correct answer |
14 | Correct | 0 ms | 596 KB | n = 4, 3000000001 is a correct answer |
15 | Correct | 1 ms | 532 KB | n = 4, 4000000000 is a correct answer |
16 | Correct | 0 ms | 596 KB | n = 5, 4000000000 is a correct answer |
17 | Correct | 1 ms | 596 KB | n = 10, 1000000343 is a correct answer |
18 | Correct | 1 ms | 596 KB | n = 10, 3189 is a correct answer |
19 | Correct | 1 ms | 608 KB | n = 10, 7000000000 is a correct answer |
20 | Correct | 0 ms | 596 KB | n = 5, 12 is a correct answer |
21 | Correct | 1 ms | 596 KB | n = 5, 25 is a correct answer |
22 | Correct | 1 ms | 596 KB | n = 2, 122 is a correct answer |
23 | Correct | 1 ms | 596 KB | n = 10, 117 is a correct answer |
24 | Correct | 1 ms | 596 KB | n = 10, 336 is a correct answer |
25 | Correct | 1 ms | 596 KB | n = 10, 438 is a correct answer |
26 | Correct | 1 ms | 596 KB | n = 10, 206 is a correct answer |
27 | Correct | 1 ms | 596 KB | n = 10, 636 is a correct answer |
28 | Correct | 0 ms | 596 KB | n = 4, 2399 is a correct answer |
29 | Correct | 1 ms | 596 KB | n = 10, 10992 is a correct answer |
30 | Correct | 1 ms | 596 KB | n = 10, 3112 is a correct answer |
31 | Execution timed out | 2089 ms | 1620 KB | Time limit exceeded |
32 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | n = 4, 80 is a correct answer |
2 | Correct | 1 ms | 556 KB | n = 9, 110 is a correct answer |
3 | Correct | 1 ms | 596 KB | n = 4, 21 is a correct answer |
4 | Correct | 1 ms | 596 KB | n = 3, 4 is a correct answer |
5 | Correct | 0 ms | 596 KB | n = 2, 62 is a correct answer |
6 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
7 | Correct | 0 ms | 596 KB | n = 3, 29 is a correct answer |
8 | Correct | 1 ms | 596 KB | n = 2, 3 is a correct answer |
9 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
10 | Correct | 0 ms | 596 KB | n = 2, 2000000001 is a correct answer |
11 | Correct | 0 ms | 596 KB | n = 2, 3000000000 is a correct answer |
12 | Correct | 1 ms | 596 KB | n = 3, 3000000000 is a correct answer |
13 | Correct | 0 ms | 596 KB | n = 3, 3000000000 is a correct answer |
14 | Correct | 0 ms | 596 KB | n = 4, 3000000001 is a correct answer |
15 | Correct | 1 ms | 532 KB | n = 4, 4000000000 is a correct answer |
16 | Correct | 0 ms | 596 KB | n = 5, 4000000000 is a correct answer |
17 | Correct | 1 ms | 596 KB | n = 10, 1000000343 is a correct answer |
18 | Correct | 1 ms | 596 KB | n = 10, 3189 is a correct answer |
19 | Correct | 1 ms | 608 KB | n = 10, 7000000000 is a correct answer |
20 | Correct | 0 ms | 596 KB | n = 5, 12 is a correct answer |
21 | Correct | 1 ms | 596 KB | n = 5, 25 is a correct answer |
22 | Correct | 1 ms | 596 KB | n = 2, 122 is a correct answer |
23 | Correct | 1 ms | 596 KB | n = 10, 117 is a correct answer |
24 | Correct | 1 ms | 596 KB | n = 10, 336 is a correct answer |
25 | Correct | 1 ms | 596 KB | n = 10, 438 is a correct answer |
26 | Correct | 1 ms | 596 KB | n = 10, 206 is a correct answer |
27 | Correct | 1 ms | 596 KB | n = 10, 636 is a correct answer |
28 | Correct | 0 ms | 596 KB | n = 4, 2399 is a correct answer |
29 | Correct | 1 ms | 596 KB | n = 10, 10992 is a correct answer |
30 | Correct | 1 ms | 596 KB | n = 10, 3112 is a correct answer |
31 | Execution timed out | 2089 ms | 1620 KB | Time limit exceeded |
32 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | n = 4, 80 is a correct answer |
2 | Correct | 1 ms | 556 KB | n = 9, 110 is a correct answer |
3 | Correct | 1 ms | 596 KB | n = 4, 21 is a correct answer |
4 | Correct | 1 ms | 596 KB | n = 3, 4 is a correct answer |
5 | Correct | 0 ms | 596 KB | n = 2, 62 is a correct answer |
6 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
7 | Correct | 0 ms | 596 KB | n = 3, 29 is a correct answer |
8 | Correct | 1 ms | 596 KB | n = 2, 3 is a correct answer |
9 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
10 | Correct | 0 ms | 596 KB | n = 2, 2000000001 is a correct answer |
11 | Correct | 0 ms | 596 KB | n = 2, 3000000000 is a correct answer |
12 | Correct | 1 ms | 596 KB | n = 3, 3000000000 is a correct answer |
13 | Correct | 0 ms | 596 KB | n = 3, 3000000000 is a correct answer |
14 | Correct | 0 ms | 596 KB | n = 4, 3000000001 is a correct answer |
15 | Correct | 1 ms | 532 KB | n = 4, 4000000000 is a correct answer |
16 | Correct | 0 ms | 596 KB | n = 5, 4000000000 is a correct answer |
17 | Correct | 1 ms | 596 KB | n = 10, 1000000343 is a correct answer |
18 | Correct | 1 ms | 596 KB | n = 10, 3189 is a correct answer |
19 | Correct | 1 ms | 608 KB | n = 10, 7000000000 is a correct answer |
20 | Correct | 0 ms | 596 KB | n = 5, 12 is a correct answer |
21 | Correct | 1 ms | 596 KB | n = 5, 25 is a correct answer |
22 | Correct | 1 ms | 596 KB | n = 2, 122 is a correct answer |
23 | Correct | 1 ms | 596 KB | n = 10, 117 is a correct answer |
24 | Correct | 1 ms | 596 KB | n = 10, 336 is a correct answer |
25 | Correct | 1 ms | 596 KB | n = 10, 438 is a correct answer |
26 | Correct | 1 ms | 596 KB | n = 10, 206 is a correct answer |
27 | Correct | 1 ms | 596 KB | n = 10, 636 is a correct answer |
28 | Correct | 0 ms | 596 KB | n = 4, 2399 is a correct answer |
29 | Correct | 1 ms | 596 KB | n = 10, 10992 is a correct answer |
30 | Correct | 1 ms | 596 KB | n = 10, 3112 is a correct answer |
31 | Execution timed out | 2089 ms | 1620 KB | Time limit exceeded |
32 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | n = 4, 80 is a correct answer |
2 | Correct | 1 ms | 556 KB | n = 9, 110 is a correct answer |
3 | Correct | 1 ms | 596 KB | n = 4, 21 is a correct answer |
4 | Correct | 1 ms | 596 KB | n = 3, 4 is a correct answer |
5 | Correct | 0 ms | 596 KB | n = 2, 62 is a correct answer |
6 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
7 | Correct | 0 ms | 596 KB | n = 3, 29 is a correct answer |
8 | Correct | 1 ms | 596 KB | n = 2, 3 is a correct answer |
9 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
10 | Correct | 0 ms | 596 KB | n = 2, 2000000001 is a correct answer |
11 | Correct | 0 ms | 596 KB | n = 2, 3000000000 is a correct answer |
12 | Correct | 1 ms | 596 KB | n = 3, 3000000000 is a correct answer |
13 | Correct | 0 ms | 596 KB | n = 3, 3000000000 is a correct answer |
14 | Correct | 0 ms | 596 KB | n = 4, 3000000001 is a correct answer |
15 | Correct | 1 ms | 532 KB | n = 4, 4000000000 is a correct answer |
16 | Correct | 0 ms | 596 KB | n = 5, 4000000000 is a correct answer |
17 | Correct | 1 ms | 596 KB | n = 10, 1000000343 is a correct answer |
18 | Correct | 1 ms | 596 KB | n = 10, 3189 is a correct answer |
19 | Correct | 1 ms | 608 KB | n = 10, 7000000000 is a correct answer |
20 | Correct | 0 ms | 596 KB | n = 5, 12 is a correct answer |
21 | Correct | 1 ms | 596 KB | n = 5, 25 is a correct answer |
22 | Correct | 1 ms | 596 KB | n = 2, 122 is a correct answer |
23 | Correct | 1 ms | 596 KB | n = 10, 117 is a correct answer |
24 | Correct | 1 ms | 596 KB | n = 10, 336 is a correct answer |
25 | Correct | 1 ms | 596 KB | n = 10, 438 is a correct answer |
26 | Correct | 1 ms | 596 KB | n = 10, 206 is a correct answer |
27 | Correct | 1 ms | 596 KB | n = 10, 636 is a correct answer |
28 | Correct | 0 ms | 596 KB | n = 4, 2399 is a correct answer |
29 | Correct | 1 ms | 596 KB | n = 10, 10992 is a correct answer |
30 | Correct | 1 ms | 596 KB | n = 10, 3112 is a correct answer |
31 | Execution timed out | 2089 ms | 1620 KB | Time limit exceeded |
32 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | n = 4, 80 is a correct answer |
2 | Correct | 1 ms | 556 KB | n = 9, 110 is a correct answer |
3 | Correct | 1 ms | 596 KB | n = 4, 21 is a correct answer |
4 | Correct | 1 ms | 596 KB | n = 3, 4 is a correct answer |
5 | Correct | 0 ms | 596 KB | n = 2, 62 is a correct answer |
6 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
7 | Correct | 0 ms | 596 KB | n = 3, 29 is a correct answer |
8 | Correct | 1 ms | 596 KB | n = 2, 3 is a correct answer |
9 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
10 | Correct | 0 ms | 596 KB | n = 2, 2000000001 is a correct answer |
11 | Correct | 0 ms | 596 KB | n = 2, 3000000000 is a correct answer |
12 | Correct | 1 ms | 596 KB | n = 3, 3000000000 is a correct answer |
13 | Correct | 0 ms | 596 KB | n = 3, 3000000000 is a correct answer |
14 | Correct | 0 ms | 596 KB | n = 4, 3000000001 is a correct answer |
15 | Correct | 1 ms | 532 KB | n = 4, 4000000000 is a correct answer |
16 | Correct | 0 ms | 596 KB | n = 5, 4000000000 is a correct answer |
17 | Correct | 1 ms | 596 KB | n = 10, 1000000343 is a correct answer |
18 | Correct | 1 ms | 596 KB | n = 10, 3189 is a correct answer |
19 | Correct | 1 ms | 608 KB | n = 10, 7000000000 is a correct answer |
20 | Correct | 0 ms | 596 KB | n = 5, 12 is a correct answer |
21 | Correct | 1 ms | 596 KB | n = 5, 25 is a correct answer |
22 | Correct | 1 ms | 596 KB | n = 2, 122 is a correct answer |
23 | Correct | 1 ms | 596 KB | n = 10, 117 is a correct answer |
24 | Correct | 1 ms | 596 KB | n = 10, 336 is a correct answer |
25 | Correct | 1 ms | 596 KB | n = 10, 438 is a correct answer |
26 | Correct | 1 ms | 596 KB | n = 10, 206 is a correct answer |
27 | Correct | 1 ms | 596 KB | n = 10, 636 is a correct answer |
28 | Correct | 0 ms | 596 KB | n = 4, 2399 is a correct answer |
29 | Correct | 1 ms | 596 KB | n = 10, 10992 is a correct answer |
30 | Correct | 1 ms | 596 KB | n = 10, 3112 is a correct answer |
31 | Execution timed out | 2089 ms | 1620 KB | Time limit exceeded |
32 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | n = 4, 80 is a correct answer |
2 | Correct | 1 ms | 556 KB | n = 9, 110 is a correct answer |
3 | Correct | 1 ms | 596 KB | n = 4, 21 is a correct answer |
4 | Correct | 1 ms | 596 KB | n = 3, 4 is a correct answer |
5 | Correct | 0 ms | 596 KB | n = 2, 62 is a correct answer |
6 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
7 | Correct | 0 ms | 596 KB | n = 3, 29 is a correct answer |
8 | Correct | 1 ms | 596 KB | n = 2, 3 is a correct answer |
9 | Correct | 0 ms | 596 KB | n = 2, 3 is a correct answer |
10 | Correct | 0 ms | 596 KB | n = 2, 2000000001 is a correct answer |
11 | Correct | 0 ms | 596 KB | n = 2, 3000000000 is a correct answer |
12 | Correct | 1 ms | 596 KB | n = 3, 3000000000 is a correct answer |
13 | Correct | 0 ms | 596 KB | n = 3, 3000000000 is a correct answer |
14 | Correct | 0 ms | 596 KB | n = 4, 3000000001 is a correct answer |
15 | Correct | 1 ms | 532 KB | n = 4, 4000000000 is a correct answer |
16 | Correct | 0 ms | 596 KB | n = 5, 4000000000 is a correct answer |
17 | Correct | 1 ms | 596 KB | n = 10, 1000000343 is a correct answer |
18 | Correct | 1 ms | 596 KB | n = 10, 3189 is a correct answer |
19 | Correct | 1 ms | 608 KB | n = 10, 7000000000 is a correct answer |
20 | Correct | 0 ms | 596 KB | n = 5, 12 is a correct answer |
21 | Correct | 1 ms | 596 KB | n = 5, 25 is a correct answer |
22 | Correct | 1 ms | 596 KB | n = 2, 122 is a correct answer |
23 | Correct | 1 ms | 596 KB | n = 10, 117 is a correct answer |
24 | Correct | 1 ms | 596 KB | n = 10, 336 is a correct answer |
25 | Correct | 1 ms | 596 KB | n = 10, 438 is a correct answer |
26 | Correct | 1 ms | 596 KB | n = 10, 206 is a correct answer |
27 | Correct | 1 ms | 596 KB | n = 10, 636 is a correct answer |
28 | Correct | 0 ms | 596 KB | n = 4, 2399 is a correct answer |
29 | Correct | 1 ms | 596 KB | n = 10, 10992 is a correct answer |
30 | Correct | 1 ms | 596 KB | n = 10, 3112 is a correct answer |
31 | Execution timed out | 2089 ms | 1620 KB | Time limit exceeded |
32 | Halted | 0 ms | 0 KB | - |