# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
88861 | 2018-12-09T11:46:28 Z | 123456 | Triumphal arch (POI13_luk) | C++14 | 1857 ms | 22764 KB |
#include <iostream> #include <vector> #include <algorithm> using namespace std; vector<vector<int>> graph; vector<bool> visited; int check(int currentCity, int k) { int childrenSum = 0; visited[currentCity] = true; for (int i = 0; i < graph[currentCity].size(); i++) { if (!visited[graph[currentCity][i]]) { childrenSum += check(graph[currentCity][i], k); } } int numberOfChildren = graph[currentCity].size() - 1; if (currentCity == 0) numberOfChildren++; return max(0, numberOfChildren + childrenSum - k); } int main() { int numberOfTowns; cin >> numberOfTowns; visited.resize(numberOfTowns); graph.resize(numberOfTowns); for (int i = 0; i < numberOfTowns - 1; i++) { int a, b; cin >> a >> b; a--; b--; graph[a].push_back(b); graph[b].push_back(a); } int start = 1; int end = numberOfTowns; int currentK; while (start < end) { for (int i = 0; i < numberOfTowns; i++) { visited[i] = false; } currentK = (start + end) / 2; if (!check(0, currentK)) { end = currentK; } else { start = currentK + 1; } } cout << start << endl; return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 256 KB | Output is correct |
2 | Correct | 2 ms | 380 KB | Output is correct |
3 | Correct | 2 ms | 432 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 504 KB | Output is correct |
2 | Correct | 2 ms | 528 KB | Output is correct |
3 | Correct | 2 ms | 540 KB | Output is correct |
4 | Correct | 3 ms | 568 KB | Output is correct |
5 | Incorrect | 2 ms | 568 KB | Output isn't correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 576 KB | Output is correct |
2 | Correct | 2 ms | 584 KB | Output is correct |
3 | Correct | 2 ms | 584 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 3 ms | 620 KB | Output is correct |
2 | Correct | 3 ms | 620 KB | Output is correct |
3 | Correct | 3 ms | 620 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 16 ms | 1184 KB | Output is correct |
2 | Correct | 18 ms | 1388 KB | Output is correct |
3 | Correct | 15 ms | 1388 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 64 ms | 2316 KB | Output is correct |
2 | Correct | 67 ms | 3220 KB | Output is correct |
3 | Correct | 45 ms | 3220 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 306 ms | 6380 KB | Output is correct |
2 | Correct | 274 ms | 8128 KB | Output is correct |
3 | Correct | 136 ms | 8128 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1108 ms | 12004 KB | Output is correct |
2 | Correct | 1121 ms | 16636 KB | Output is correct |
3 | Correct | 474 ms | 16636 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1857 ms | 17632 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1473 ms | 17668 KB | Output is correct |
2 | Correct | 1249 ms | 22764 KB | Output is correct |
3 | Correct | 643 ms | 22764 KB | Output is correct |