| 18775 | 2025-11-04 17:47:59 | algopro | Fire on a Tree | cpp17 | Időlimit túllépés 60/100 | 1.088s | 66876 KiB |
// UUID: 14689821-380c-4c73-a87e-70acab557ef1
#include <bits/stdc++.h>
using namespace std;
#define int long long
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int n;
cin >> n;
vector<vector<int>>adj(n);
for(int i = 1; i < n; i++){
int a,b;
cin >> a >> b;
adj[a].push_back(b);
adj[b].push_back(a);
}
map<pair<int,int>, int>cache;
function<int(int,int)> dfs;
dfs = [&](int cs, int p){
if(cache.count({cs,p}))return cache [{cs,p}];
int sum = 0, ln = 0;
for(int i : adj[cs]){
if(i != p){
int res = dfs(i, cs);
sum += res;
ln = max(ln, res);
}
}
return cache[{cs,p}] = sum - ln +1;
};
for(int i = 0; i < n; i++){
cout << dfs(i, -1) << " ";
}
}
| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Elfogadva | 1ms | 316 KiB | ||||
| 2 | Elfogadva | 1ms | 508 KiB | ||||
| subtask2 | 35/35 | ||||||
| 3 | Elfogadva | 1ms | 316 KiB | ||||
| 4 | Elfogadva | 1ms | 432 KiB | ||||
| 5 | Elfogadva | 1ms | 316 KiB | ||||
| 6 | Elfogadva | 1ms | 316 KiB | ||||
| 7 | Elfogadva | 1ms | 316 KiB | ||||
| subtask3 | 25/25 | ||||||
| 8 | Elfogadva | 13ms | 524 KiB | ||||
| 9 | Elfogadva | 4ms | 564 KiB | ||||
| 10 | Elfogadva | 4ms | 1084 KiB | ||||
| 11 | Elfogadva | 250ms | 672 KiB | ||||
| 12 | Elfogadva | 7ms | 884 KiB | ||||
| 13 | Elfogadva | 6ms | 820 KiB | ||||
| subtask4 | 0/40 | ||||||
| 14 | Elfogadva | 813ms | 29500 KiB | ||||
| 15 | Időlimit túllépés | 1.088s | 19636 KiB | ||||
| 16 | Elfogadva | 578ms | 66876 KiB | ||||
| 17 | Időlimit túllépés | 1.088s | 25000 KiB | ||||
| 18 | Időlimit túllépés | 1.088s | 47924 KiB | ||||
| 19 | Időlimit túllépés | 1.088s | 43316 KiB | ||||
| 20 | Időlimit túllépés | 1.083s | 25000 KiB | ||||
| 21 | Időlimit túllépés | 1.087s | 39732 KiB | ||||
| 22 | Időlimit túllépés | 1.087s | 49460 KiB | ||||