# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
66651 | 2018-08-12T00:22:09 Z | tincamatei | Jakarta Skyscrapers (APIO15_skyscraper) | C++14 | 1000 ms | 64852 KB |
#include <bits/stdc++.h> using namespace std; const int MAX_N = 30000; vector<pair<int, int> > graph[MAX_N]; map<pair<int, int>, bool> doges; int dist[MAX_N]; bool inQueue[MAX_N]; int dijkstra(int n, int src, int dest) { int firstDist = 0, cons = 0; deque<deque<int> > pq(n); memset(dist, 0x3f3f3f3f, sizeof(dist)); dist[src] = 0; pq.front().push_back(src); while(cons <= n) { pq.push_back(deque<int>()); if(pq.front().empty()) ++cons; else cons = 0; for(auto nod: pq.front()) { if(firstDist == dist[nod]) { for(auto it: graph[nod]) if(firstDist + it.second < dist[it.first]) { dist[it.first] = firstDist + it.second; pq[it.second].push_back(it.first); } } } pq.pop_front(); ++firstDist; } if(dist[dest] == 0x3f3f3f3f) return -1; return dist[dest]; } int main() { int n, m, b, p, src, dest; scanf("%d%d", &n, &m); for(int i = 0; i < m; ++i) { scanf("%d%d", &b, &p); if(i == 0) src = b; if(i == 1) dest = b; doges[make_pair(b, p)] = true; } for(auto it: doges) { pair<int, int> doge = it.first; if(it.second) { int poz = doge.first - doge.second, cost = 1; bool foundSimilar = false; while(poz >= 0 && !foundSimilar) { graph[doge.first].push_back(make_pair(poz, cost++)); if(doges[make_pair(poz, doge.second)]) foundSimilar = true; poz -= doge.second; } poz = doge.first + doge.second, cost = 1; foundSimilar = false; while(poz < n && !foundSimilar) { graph[doge.first].push_back(make_pair(poz, cost++)); if(doges[make_pair(poz, doge.second)]) foundSimilar = true; poz += doge.second; } } } printf("%d", dijkstra(n, src, dest)); return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 1148 KB | Output is correct |
2 | Correct | 2 ms | 1148 KB | Output is correct |
3 | Correct | 3 ms | 1200 KB | Output is correct |
4 | Correct | 3 ms | 1276 KB | Output is correct |
5 | Correct | 2 ms | 1292 KB | Output is correct |
6 | Correct | 3 ms | 1352 KB | Output is correct |
7 | Correct | 4 ms | 1352 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 1352 KB | Output is correct |
2 | Correct | 3 ms | 1352 KB | Output is correct |
3 | Correct | 3 ms | 1388 KB | Output is correct |
4 | Correct | 4 ms | 1388 KB | Output is correct |
5 | Correct | 3 ms | 1392 KB | Output is correct |
6 | Correct | 3 ms | 1516 KB | Output is correct |
7 | Correct | 3 ms | 1516 KB | Output is correct |
8 | Correct | 3 ms | 1516 KB | Output is correct |
9 | Correct | 3 ms | 1516 KB | Output is correct |
10 | Correct | 4 ms | 1532 KB | Output is correct |
11 | Correct | 5 ms | 1788 KB | Output is correct |
12 | Correct | 3 ms | 1788 KB | Output is correct |
13 | Correct | 4 ms | 1788 KB | Output is correct |
14 | Correct | 5 ms | 1916 KB | Output is correct |
15 | Correct | 6 ms | 1916 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 1916 KB | Output is correct |
2 | Correct | 3 ms | 1916 KB | Output is correct |
3 | Correct | 4 ms | 1916 KB | Output is correct |
4 | Correct | 4 ms | 1916 KB | Output is correct |
5 | Correct | 3 ms | 1916 KB | Output is correct |
6 | Correct | 3 ms | 1916 KB | Output is correct |
7 | Correct | 3 ms | 1916 KB | Output is correct |
8 | Correct | 4 ms | 1916 KB | Output is correct |
9 | Correct | 4 ms | 1916 KB | Output is correct |
10 | Correct | 5 ms | 1916 KB | Output is correct |
11 | Correct | 8 ms | 1916 KB | Output is correct |
12 | Correct | 4 ms | 1916 KB | Output is correct |
13 | Correct | 5 ms | 1916 KB | Output is correct |
14 | Correct | 5 ms | 1916 KB | Output is correct |
15 | Correct | 5 ms | 1920 KB | Output is correct |
16 | Correct | 5 ms | 1920 KB | Output is correct |
17 | Correct | 11 ms | 2992 KB | Output is correct |
18 | Correct | 9 ms | 3068 KB | Output is correct |
19 | Correct | 6 ms | 3068 KB | Output is correct |
20 | Correct | 7 ms | 3068 KB | Output is correct |
21 | Correct | 4 ms | 3068 KB | Output is correct |
22 | Correct | 8 ms | 3068 KB | Output is correct |
23 | Correct | 8 ms | 3068 KB | Output is correct |
24 | Correct | 10 ms | 3580 KB | Output is correct |
25 | Correct | 11 ms | 3580 KB | Output is correct |
26 | Correct | 11 ms | 3580 KB | Output is correct |
27 | Correct | 12 ms | 3580 KB | Output is correct |
28 | Correct | 22 ms | 4476 KB | Output is correct |
29 | Correct | 52 ms | 7284 KB | Output is correct |
30 | Correct | 15 ms | 7284 KB | Output is correct |
31 | Correct | 25 ms | 7284 KB | Output is correct |
32 | Correct | 22 ms | 7284 KB | Output is correct |
33 | Correct | 99 ms | 11400 KB | Output is correct |
34 | Correct | 98 ms | 11456 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 11456 KB | Output is correct |
2 | Correct | 3 ms | 11456 KB | Output is correct |
3 | Correct | 2 ms | 11456 KB | Output is correct |
4 | Correct | 3 ms | 11456 KB | Output is correct |
5 | Correct | 3 ms | 11456 KB | Output is correct |
6 | Correct | 3 ms | 11456 KB | Output is correct |
7 | Correct | 3 ms | 11456 KB | Output is correct |
8 | Correct | 3 ms | 11456 KB | Output is correct |
9 | Correct | 3 ms | 11456 KB | Output is correct |
10 | Correct | 3 ms | 11456 KB | Output is correct |
11 | Correct | 6 ms | 11456 KB | Output is correct |
12 | Correct | 5 ms | 11456 KB | Output is correct |
13 | Correct | 4 ms | 11456 KB | Output is correct |
14 | Correct | 5 ms | 11456 KB | Output is correct |
15 | Correct | 6 ms | 11456 KB | Output is correct |
16 | Correct | 5 ms | 11456 KB | Output is correct |
17 | Correct | 11 ms | 11456 KB | Output is correct |
18 | Correct | 7 ms | 11456 KB | Output is correct |
19 | Correct | 7 ms | 11456 KB | Output is correct |
20 | Correct | 9 ms | 11456 KB | Output is correct |
21 | Correct | 4 ms | 11456 KB | Output is correct |
22 | Correct | 20 ms | 11456 KB | Output is correct |
23 | Correct | 7 ms | 11456 KB | Output is correct |
24 | Correct | 10 ms | 11456 KB | Output is correct |
25 | Correct | 9 ms | 11456 KB | Output is correct |
26 | Correct | 9 ms | 11456 KB | Output is correct |
27 | Correct | 8 ms | 11456 KB | Output is correct |
28 | Correct | 19 ms | 11456 KB | Output is correct |
29 | Correct | 57 ms | 11456 KB | Output is correct |
30 | Correct | 12 ms | 11456 KB | Output is correct |
31 | Correct | 21 ms | 11456 KB | Output is correct |
32 | Correct | 15 ms | 11456 KB | Output is correct |
33 | Correct | 133 ms | 11456 KB | Output is correct |
34 | Correct | 123 ms | 11456 KB | Output is correct |
35 | Correct | 140 ms | 11456 KB | Output is correct |
36 | Correct | 14 ms | 11456 KB | Output is correct |
37 | Correct | 174 ms | 15612 KB | Output is correct |
38 | Correct | 191 ms | 15612 KB | Output is correct |
39 | Correct | 204 ms | 15612 KB | Output is correct |
40 | Correct | 191 ms | 15612 KB | Output is correct |
41 | Correct | 185 ms | 15612 KB | Output is correct |
42 | Correct | 14 ms | 15612 KB | Output is correct |
43 | Correct | 21 ms | 15612 KB | Output is correct |
44 | Correct | 12 ms | 15612 KB | Output is correct |
45 | Correct | 596 ms | 37048 KB | Output is correct |
46 | Correct | 735 ms | 37224 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 37224 KB | Output is correct |
2 | Correct | 3 ms | 37224 KB | Output is correct |
3 | Correct | 4 ms | 37224 KB | Output is correct |
4 | Correct | 4 ms | 37224 KB | Output is correct |
5 | Correct | 3 ms | 37224 KB | Output is correct |
6 | Correct | 3 ms | 37224 KB | Output is correct |
7 | Correct | 3 ms | 37224 KB | Output is correct |
8 | Correct | 4 ms | 37224 KB | Output is correct |
9 | Correct | 4 ms | 37224 KB | Output is correct |
10 | Correct | 4 ms | 37224 KB | Output is correct |
11 | Correct | 6 ms | 37224 KB | Output is correct |
12 | Correct | 4 ms | 37224 KB | Output is correct |
13 | Correct | 3 ms | 37224 KB | Output is correct |
14 | Correct | 7 ms | 37224 KB | Output is correct |
15 | Correct | 7 ms | 37224 KB | Output is correct |
16 | Correct | 4 ms | 37224 KB | Output is correct |
17 | Correct | 10 ms | 37224 KB | Output is correct |
18 | Correct | 6 ms | 37224 KB | Output is correct |
19 | Correct | 8 ms | 37224 KB | Output is correct |
20 | Correct | 8 ms | 37224 KB | Output is correct |
21 | Correct | 6 ms | 37224 KB | Output is correct |
22 | Correct | 8 ms | 37224 KB | Output is correct |
23 | Correct | 8 ms | 37224 KB | Output is correct |
24 | Correct | 12 ms | 37224 KB | Output is correct |
25 | Correct | 8 ms | 37224 KB | Output is correct |
26 | Correct | 9 ms | 37224 KB | Output is correct |
27 | Correct | 9 ms | 37224 KB | Output is correct |
28 | Correct | 25 ms | 37224 KB | Output is correct |
29 | Correct | 53 ms | 37224 KB | Output is correct |
30 | Correct | 13 ms | 37224 KB | Output is correct |
31 | Correct | 21 ms | 37224 KB | Output is correct |
32 | Correct | 17 ms | 37224 KB | Output is correct |
33 | Correct | 95 ms | 37224 KB | Output is correct |
34 | Correct | 86 ms | 37224 KB | Output is correct |
35 | Correct | 95 ms | 37224 KB | Output is correct |
36 | Correct | 17 ms | 37224 KB | Output is correct |
37 | Correct | 193 ms | 37224 KB | Output is correct |
38 | Correct | 179 ms | 37224 KB | Output is correct |
39 | Correct | 154 ms | 37224 KB | Output is correct |
40 | Correct | 189 ms | 37224 KB | Output is correct |
41 | Correct | 180 ms | 37224 KB | Output is correct |
42 | Correct | 14 ms | 37224 KB | Output is correct |
43 | Correct | 15 ms | 37224 KB | Output is correct |
44 | Correct | 12 ms | 37224 KB | Output is correct |
45 | Correct | 717 ms | 37224 KB | Output is correct |
46 | Correct | 634 ms | 37224 KB | Output is correct |
47 | Execution timed out | 1079 ms | 64852 KB | Time limit exceeded |
48 | Halted | 0 ms | 0 KB | - |