AtCoder Beginner Contest 239 E問題 Subtree K-th Max
問題
提出解答
問題の概要
頂点からなる頂点 を根とする根付き木がある. 番目の辺は頂点 を結ぶ. また, 頂点 には整数 が書かれている.
次の 個の問題に答えよ.
- 頂点 を根とする部分木にある頂点に書かれている整数のうち, 番目に大きい整数は何か?
制約
- 頂点 を根とする部分木の位数 (頂点の数) は 以上
解法
列 に対して, で を降順に並び替えた列, で を連結させた列とする.
また, 頂点 を根とする根付き木 に対して, 頂点 の個全体の集合を とする.
このとき, 各頂点 に対して, を を根とする部分木の各頂点に書かれている整数を降順に並べた列とする. すると,
である.
ここで, であること及び, としたとき, の 項目より先の項はクエリの解答に影響を与えないことから各 は高々 項だけ持っていれば良い.
このことから計算量 で求めることができた.