ログインしてください。
公式
D - I Wanna Win The Game 解説 by kort0n
最下位ビットとそれ以外のビットに分けて考えると、「それ以外のビット」の部分を入力の小さい同じ問題に帰着させることが出来ます。具体的には、
\(dp_i: \) 総 \(xor\) が \(0\) となる、総和が \(i\) の非負整数列の数
とすると、
\[dp_i = \begin{cases} \sum_{j} \binom{N}{2*j}dp_{\left(i - 2j\right) / 2} & i が偶数のとき \\ 0 & iが奇数のとき \end{cases} \]
という漸化式が成立します。この漸化式に従って動的計画法のテーブルを昇順に埋めることで、二項係数の前計算の時間を除いて、この問題を \(O(M^2)\) の時間計算量で解くことが出来ます。
投稿日時:
最終更新: