[AtCoder] ABC 183 F – Confluence

問題

方針

生徒がどの集団に属するかは Union-Find で管理し、ある集団における各クラスの人数はマップを用いて管理します。ある集団をマージするとき、各クラスの情報も更新する必要があるので、人数の少ない集団の各クラスの人数を人数の多い集団のクラスの情報にマージします。

AtCoder のdsu (Union-Find) の mergeの部分は、

となっていると思いますが、これは、集団 \( y \) を 集団 \( x \) に追加していて、集団 \( y \) の方が人数が少ないことが分かります。

コード