ある頂点を根とする根付きとして見て、オイラーツアーしておきます。

bb を固定して考えます。 bbcc の位置関係は、bb の部分木に cc が存在する または bb の部分木に cc が存在しない の 2 通りです。

頂点番号が大きい方から見ます。

前者の場合は、bb が出現したときに、部分木のうち出現済みの頂点数が分かればよくて、オイラーツアー+Segtreeでできます。bb の子のうち部分木に cc が含まれる木以外の任意の未出現の頂点が aa の候補です。 ある部分木以外に加算できればよくて、同様にSegtreeでできます。

後者の場合も同様です。 bb が出現したときに、部分木以外の出現済み頂点が分かれば良いです。bb の部分木の任意の未出現の頂点が aa の候補です。 ある部分木に加算できればよいです。

aa はその時点で加算された値を取ればよいです。

計算量は O(NlogN)O(N \log N) です。