ランレングス圧縮
AtCoder
AtCoder800点
ARC-E
数え上げ問題
数列
XOR
DP
DP高速化
DP高速化:累積和
ランレングス圧縮
区間
区間分割型シーケンシャルDP
考察:場合分けして考える
非自明な線形時間
橙色diff
ARC-like
区間分割の仕方を走査する問題
制約条件:各グループの何かが等しい
累積和テク:区間の総和を累積和で高速に求める
Zero-Sum Ranges
時間かかりすぎた。シンプルで面白い。 問題へのリンク 問題概要 要素からなる 0 以上の整数列 が与えられる。 これをいくつかの連続した部分列に分割する 通りの方法のうち、各連続区間の XOR 和が互いに等しくなるものが何通りあるか、1000000007 で割った…
AtCoder
AtCoder400点
ABC-D
区間
操作
XOR
0と1の問題
数列
しゃくとり法
累積和
二分探索
最適化の考察:最適解の形を考える
最適化の考察:変形しても悪化しない
最適化の考察:探索候補を絞る
単純化:操作の流れを単純化して考える
操作後の結果の最適化問題
操作:flip
最大スコア
緑色diff
区間の長さの最大値または最小値を求める
テク:区間の交差関係や包含関係を除去できる
場合分け:2点や2区間の配置関係を考える
disjointな区間の集合を管理する問題
操作をK回まで行える
ランレングス圧縮
考察:区間ごとに分割して考える
操作:区間
典型要素を詰め合わせた教育的問題
最適化問題
これ...以前 Twitter につぶやいた問題とよく似てた!!! 400 点くらいの問題【問題】N 要素の 0 と 1 から成る数列が与えられる。以下の操作を最大 K 回行なって錬成し得る数列が何通りあるか 10e9 で割った余りを求めよ「数列の連続する区間を選んで 0 と…
AtCoder
AtCoder300点
ABC-C
区間
操作:区間
操作
最小回数・最小個数を求める
ヒストグラム
0と1の問題
連結成分
考察:主客転倒・寄与分解
ランレングス圧縮
茶色diff
for文
最適化問題
NoviSteps3Q
考察:独立に考える
シミュレーション
整理するのがちょっと大変系。でもとても教育的だと思う! 問題へのリンク 問題概要 次元の整数ベクトル () が与えられる。これを以下のようなベクトルの和として表したい。 () のように「」が連続していてそれ以外は になっているベクトル 例えば、(1, 3, 3…
二分探索
Greedy
考察:一部の変数を固定して考える
Greedy:ある量を決めると残りが決まっていく
文字列
辞書順
AtCoder
AGC-C
AtCoder700点
ランレングス圧縮
黄色diff
弱かった。。。 問題へのリンク 問題概要 個の正の整数 が与えられる。 文字列の列 であって の文字数が である 辞書式順序で < < < を満たすもののうち、登場文字数の最小値を求めよ。 制約 考えたこと が狭義単調増加だったら、"a" の個数だけで行けるので…