ARC117 D - Miracle Tree (600)
適当な点から一番遠い点をDFSで求め、そこから一番遠い点をDFSで求める
ここは木の直径のどっちかの点になっている
そこからDFSをしてそれぞれの点の子の個数を求めておく
最初に求めた点からDFSで実際に番号をつけていく
行きがけの際に点に番号をつけてインクリメントし、返ってきた際にデクリメントする
DFSは子の要素が小さい方から探索する
最後の点の上り分のインクリメントが省略されるので、実際には子の内最後に探索するものの個数が最大になってれば他は何でも良い
DFSをするだけなので$ \mathcal{O}(N)