2023/5/20(土)
ABC302に出た。
A: ceil(A/B), AとBはくそでかいことに注意
B: 全マスを始点にして8方向全探索
C: 順列全探索
D: Aを全探索し、各場合についてにぶたんで最も良いBを探す
E: 孤立頂点の数だけ差分更新すればあとは愚直にやってよい。辺の数は高々Q本であり、各辺について変更操作は「追加する」「削除する」しかしないので全体$O(Q)$で済む。
F: 整数と集合をそれぞれ頂点としたグラフを作ってBFS
G: 解けず。2サイクル→3サイクル→4サイクルの順で解決すると通る。競プロフレンズ氏の解説が分かりやすい。
noshi91氏によれば数が5以上だと無理らしい。そこまで踏まえて最大を4としていたのか。
Ex: 解けず。木ではなく配列の場合が解けて、なおかつ1長い配列の場合と1短い配列の場合が高速に解ければあとはDFSするだけだなと思ったのだが、前提となる配列の場合の問題が解けなかったので無理だった。どうやらグラフで定式化してUnionFindを上手く使うと解けるらしい。
Categories: 未分類