positional_notation ってスニペットがパッと出てこなかった
- 2部グラフ
- 互いに隣接しない頂点からなる集合を独立集合といい、頂点集合を n 個の独立集合に分割可能なグラフのことを n 部グラフ (n-partite graph) という。 (2部グラフ - Wikipedia)
- todo
- ゲームDPはどのように実装するのが実装しやすいのだろうか(模索する)
知見
- not adjacent な部分列の個数はフィボナッチ数になる
- $N\leq 60$ とかでも指数時間のオーダーになることもある
- 今回の計算量は $O(N \varphi^{N/2})$
- 数え上げの DP はそのまま列挙 DP に転用できる
- 和の分布を求める方法
- 値の範囲が小さい場合は、 FFT を使った畳み込みでよい
- 値の範囲が大きく、和の分布の特定の値のカウントだけを知りたい場合は、HashMap や二分探索をするとよい
コンテスト中にやったこと
- まずは全列挙可能か検討した
- 全列挙で何通りかについて、最初はフィボナッチ数列なことに気づかなかった。実験コードを書いて、実行して値を見てフィボナッチ数列になっていることに気づいた