| 18782 | 2025-11-04 18:00:18 | algopro | Fire on a Tree | cpp17 | Time limit exceeded 60/100 | 1.093s | 25612 KiB |
// UUID: e5b67693-7937-422b-abc3-2dcb004279fe
#include <bits/stdc++.h>
using namespace std;
#define int long long
int n;
vector<vector<pair<int,int>>>adj;
int dfs(int cs, int p){
int sum = 0, ln = 0;
for(auto& [i, m] : adj[cs]){
if(i != p){
if(m == n)m = dfs(i,cs);
sum += m;
ln = max(ln, m);
}
}
return sum - ln +1;
};
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cin >> n;
adj.resize(n);
for(int i = 1; i < n; i++){
int a,b;
cin >> a >> b;
adj[a].push_back({b,n});
adj[b].push_back({a, n});
}
for(int i = 0; i < n; i++){
cout << dfs(i, -1) << " ";
}
}
| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Accepted | 1ms | 316 KiB | ||||
| 2 | Accepted | 1ms | 316 KiB | ||||
| subtask2 | 35/35 | ||||||
| 3 | Accepted | 1ms | 316 KiB | ||||
| 4 | Accepted | 1ms | 316 KiB | ||||
| 5 | Accepted | 1ms | 368 KiB | ||||
| 6 | Accepted | 1ms | 316 KiB | ||||
| 7 | Accepted | 1ms | 316 KiB | ||||
| subtask3 | 25/25 | ||||||
| 8 | Accepted | 2ms | 316 KiB | ||||
| 9 | Accepted | 2ms | 316 KiB | ||||
| 10 | Accepted | 2ms | 564 KiB | ||||
| 11 | Accepted | 4ms | 564 KiB | ||||
| 12 | Accepted | 2ms | 564 KiB | ||||
| 13 | Accepted | 2ms | 564 KiB | ||||
| subtask4 | 0/40 | ||||||
| 14 | Accepted | 104ms | 9276 KiB | ||||
| 15 | Time limit exceeded | 1.077s | 11704 KiB | ||||
| 16 | Accepted | 206ms | 25612 KiB | ||||
| 17 | Time limit exceeded | 1.077s | 14756 KiB | ||||
| 18 | Accepted | 261ms | 16180 KiB | ||||
| 19 | Accepted | 277ms | 17204 KiB | ||||
| 20 | Time limit exceeded | 1.093s | 14756 KiB | ||||
| 21 | Accepted | 204ms | 15700 KiB | ||||
| 22 | Accepted | 234ms | 17204 KiB | ||||