Submission #30858093
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
int main() {
int N;
cin >> N;
priority_queue<pair<int, int>> q;
q.emplace(0, 0);
for (int i = 1; i < N; i++) {
int A;
cin >> A;
q.emplace(A, i);
}
vector<vector<int>> g(N);
for (int i = 1; i < N; i++) {
int u, v;
cin >> u >> v;
u--, v--;
g[u].emplace_back(v);
g[v].emplace_back(u);
}
vector<int> parents(N);
function<void(int, int)> dfs = [&](int x, int p) {
parents[x] = p;
for (int nx : g[x]) {
if (nx != p) {
dfs(nx, x);
}
}
};
// N: no parent
dfs(0, N);
// -1: non-zero, else: next candidate for non-zero
vector<int> skip(N + 1, -1);
// find the nearest non-zero ancestor
function<int(int)> find_non_zero = [&](int x) {
// path compression like DSU
return skip[x] == -1 ? x : skip[x] = find_non_zero(skip[x]);
};
while (true) {
auto [a, x] = q.top();
q.pop();
int non_zero = find_non_zero(parents[x]);
if (non_zero == N) {
cout << a << endl;
break;
}
// replace with zero and set candidate
skip[non_zero] = parents[non_zero];
}
}
Submission Info
| Submission Time | |
|---|---|
| Task | G - Game on Tree 3 |
| User | dnek |
| Language | C++ (GCC 9.2.1) |
| Score | 600 |
| Code Size | 1141 Byte |
| Status | AC |
| Exec Time | 198 ms |
| Memory | 32872 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 600 / 600 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | example0.txt, example1.txt |
| All | 000.txt, 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, 006.txt, 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, 028.txt, 029.txt, 030.txt, 031.txt, 032.txt, 033.txt, 034.txt, 035.txt, 036.txt, 037.txt, 038.txt, 039.txt, 040.txt, 041.txt, 042.txt, 043.txt, 044.txt, 045.txt, 046.txt, 047.txt, 048.txt, 049.txt, 050.txt, 051.txt, 052.txt, 053.txt, 054.txt, 055.txt, 056.txt, 057.txt, 058.txt, 059.txt, 060.txt, 061.txt, 062.txt, example0.txt, example1.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 000.txt | AC | 19 ms | 3428 KiB |
| 001.txt | AC | 130 ms | 17832 KiB |
| 002.txt | AC | 164 ms | 21644 KiB |
| 003.txt | AC | 148 ms | 23856 KiB |
| 004.txt | AC | 150 ms | 21644 KiB |
| 005.txt | AC | 150 ms | 22604 KiB |
| 006.txt | AC | 154 ms | 28924 KiB |
| 007.txt | AC | 190 ms | 32872 KiB |
| 008.txt | AC | 165 ms | 25428 KiB |
| 009.txt | AC | 161 ms | 25396 KiB |
| 010.txt | AC | 159 ms | 21552 KiB |
| 011.txt | AC | 159 ms | 21552 KiB |
| 012.txt | AC | 148 ms | 25176 KiB |
| 013.txt | AC | 82 ms | 9400 KiB |
| 014.txt | AC | 193 ms | 17496 KiB |
| 015.txt | AC | 8 ms | 3620 KiB |
| 016.txt | AC | 145 ms | 14060 KiB |
| 017.txt | AC | 142 ms | 13988 KiB |
| 018.txt | AC | 145 ms | 14140 KiB |
| 019.txt | AC | 51 ms | 6624 KiB |
| 020.txt | AC | 54 ms | 6792 KiB |
| 021.txt | AC | 62 ms | 7676 KiB |
| 022.txt | AC | 142 ms | 13864 KiB |
| 023.txt | AC | 190 ms | 17296 KiB |
| 024.txt | AC | 198 ms | 17256 KiB |
| 025.txt | AC | 198 ms | 17492 KiB |
| 026.txt | AC | 192 ms | 17296 KiB |
| 027.txt | AC | 190 ms | 17392 KiB |
| 028.txt | AC | 181 ms | 17424 KiB |
| 029.txt | AC | 190 ms | 17248 KiB |
| 030.txt | AC | 179 ms | 17424 KiB |
| 031.txt | AC | 188 ms | 17324 KiB |
| 032.txt | AC | 182 ms | 17220 KiB |
| 033.txt | AC | 184 ms | 17224 KiB |
| 034.txt | AC | 180 ms | 17320 KiB |
| 035.txt | AC | 186 ms | 17492 KiB |
| 036.txt | AC | 178 ms | 17256 KiB |
| 037.txt | AC | 185 ms | 17388 KiB |
| 038.txt | AC | 184 ms | 17216 KiB |
| 039.txt | AC | 184 ms | 17304 KiB |
| 040.txt | AC | 185 ms | 17324 KiB |
| 041.txt | AC | 190 ms | 17424 KiB |
| 042.txt | AC | 176 ms | 17248 KiB |
| 043.txt | AC | 181 ms | 17420 KiB |
| 044.txt | AC | 165 ms | 17308 KiB |
| 045.txt | AC | 169 ms | 17216 KiB |
| 046.txt | AC | 167 ms | 17424 KiB |
| 047.txt | AC | 173 ms | 17324 KiB |
| 048.txt | AC | 170 ms | 17424 KiB |
| 049.txt | AC | 178 ms | 17296 KiB |
| 050.txt | AC | 174 ms | 17496 KiB |
| 051.txt | AC | 175 ms | 17328 KiB |
| 052.txt | AC | 176 ms | 17496 KiB |
| 053.txt | AC | 192 ms | 17292 KiB |
| 054.txt | AC | 181 ms | 17292 KiB |
| 055.txt | AC | 185 ms | 17216 KiB |
| 056.txt | AC | 187 ms | 17424 KiB |
| 057.txt | AC | 182 ms | 17392 KiB |
| 058.txt | AC | 186 ms | 17488 KiB |
| 059.txt | AC | 190 ms | 17252 KiB |
| 060.txt | AC | 192 ms | 17392 KiB |
| 061.txt | AC | 194 ms | 17308 KiB |
| 062.txt | AC | 192 ms | 17492 KiB |
| example0.txt | AC | 3 ms | 3384 KiB |
| example1.txt | AC | 3 ms | 3456 KiB |