I tried to solve problem e in round 199 xenia and tree using heavy light decomposition but I couldn't figure out the whole idea anyone ?
# | User | Rating |
---|---|---|
1 | tourist | 3985 |
2 | jiangly | 3814 |
3 | jqdai0815 | 3682 |
4 | Benq | 3529 |
5 | orzdevinwang | 3526 |
6 | ksun48 | 3517 |
7 | Radewoosh | 3410 |
8 | hos.lyric | 3399 |
9 | ecnerwala | 3392 |
9 | Um_nik | 3392 |
# | User | Contrib. |
---|---|---|
1 | cry | 169 |
2 | maomao90 | 162 |
2 | Um_nik | 162 |
4 | atcoder_official | 161 |
5 | djm03178 | 158 |
6 | -is-this-fft- | 157 |
7 | adamant | 155 |
8 | awoo | 154 |
8 | Dominater069 | 154 |
10 | luogu_official | 150 |
I tried to solve problem e in round 199 xenia and tree using heavy light decomposition but I couldn't figure out the whole idea anyone ?
Name |
---|
EDIT: Wrong idea. As Xellos said: every problem has a simple, clear, obviously incorrect solution :D
thnx for your reply donot u have a link for that solution ?
This problem can be solve easier with centroid decomposition.
what is that "centroid decomposition" ?
Centroid of a tree is a vertex that after deleting it, every component will have at most n/2 vertices. You can easily prove its existence. So, using this, you can use divide and conquer on trees and if your time complexity for each merge(conquer) is O(f(n)), then the total complexity would be ; Because you did it at most times on each vertex(every time, the size of the component a vertex u is in it would be half of the previous one).
Almost give up, but it works. Handle the segment carefully and not affect other segment values (by limit range update between chain root and chain tail of each chain) https://mirror.codeforces.com/contest/342/submission/111296661