2020-11-02 木のu-vパスでuからv側にひとつ動いた頂点を求めるクエリ このクエリをverifyできるAOJ/yukicoderの問題を探しています アルゴリズム まずは O(NlogN) の前計算で level ancestor を O(1) で求められるようにしておきます depthu≥depthv のとき、求める頂点は paru です depthu<depthv のとき、l=la(v,depthv−depthu−1) として、求める頂点は parl=u なら l、そうでなければ paru です クエリ当たりの計算量は O(1) です 実装例 next beet-aizu.github.io 問題例 codeforces.com