F - Chord Crossing 解説
by
hiryuN
この解法の本質は公式解説と同じです。
\(M\) 本の線分が互いに交わらないことから円の内部の領域は \(M\) 本の線分によって \(M+1\) 個の領域に分割され、領域を頂点、線分を隣接する2つの領域を繋ぐ辺とするグラフが構築できます。
このグラフは連結かつ \(M+1\) 頂点 \(M\) 辺なので木です。
クエリで与えられる線分(に向きをつけたもの)はいくつかの領域を線分と交差することによって移動するのでウォークと対応づけられます。
「線分がいくつの線分と交わるか」
はグラフ上では
「線分に対応するウォークの長さ」
と等しいです。
このウォークは同一ではない2つの直線が2回以上交わることはないことより同じ辺を2回以上通ることはないので、グラフが木であることからパスであるとわかります
以上のことより木上のパスの長さを求める問題に帰着することができました。 あとは公式解説と同じなので割愛。
投稿日時:
最終更新: