公式解説とは別の解法です.
問題はこちら
問題概要

と番号付けされた

個の白い球がある.球

または球

を選んで黒く塗ることができるという操作を

回行う.すべての球を黒で塗ることが可能かどうかを判定し,可能なら塗り方を出力せよ.

解説1:最大二部マッチング

個の頂点

と

個の頂点

を作り,

と

の間,

と

の間に辺を張る.このグラフの最大マッチングが答え.Dinicを用いると

とかになるが間に合う.この方法だと

つ以上の選択肢がある場合でも解ける.
解説2:2-SAT

個の論理変数

を考える.

を

を選ぶことに,

を

を選ぶことに対応させる.

なら

,

なら

,

なら

という節を追加していけば2-SATを解く
アルゴリズムで解ける.このままだと最悪

になるが,
ABC210 F - Coprime Solitaireと同じようにして節の数を省略することで

で解ける.
提出プログラム
https://yukicoder.me/submissions/687124 最大二部マッチング
https://yukicoder.me/submissions/687347 2-SAT
感想
2-SATの節削減覚えたので使ってみた.