DP高速化:stackの活用
AtCoder
有志コン
そのまま覚えたいシンプル設定の中堅以上の典型問題
最大値の最大化
最適化テク:「最大値の最大化」に基づく緩和
DP
シーケンシャルDP
DP状態:on/off
DP状態:state
DP高速化:直前との比較のみでよい
区間分割型シーケンシャルDP
DP高速化
f(i,j)をiとjとに分離する
数列
Monge性
DP高速化:Monge性の活用(LARSCH)
最適化テク:緩和しても良い
最大スコア
区間分割の仕方を走査する問題
区間
操作をstackを用いて高速化する
DP高速化:stackの活用
stack
最適化問題
これは学びの深い DP 問題! 問題へのリンク 問題概要 長さ の数列 がある (負値もありうる)。これらの数列をいくつかの連続する区間に分割する。 区間分割の仕方を最適化したときの、各区間における「最大値と最小値の差」の総和として、考えられる最大値を…
AtCoder
AtCoder700点
ARC-E
黄色diff
DP
包除原理
包除原理:DP
stack
非自明な線形時間
DP高速化
DP高速化:セグメント木
数列
区間分割型シーケンシャルDP
補集合を考える
数え上げ問題
グラフ・盤面・数列の個数の数え上げ
座標圧縮
遅延評価
DP高速化:stackの活用
区間分割の仕方を走査する問題
操作をstackを用いて高速化する
間に合わなかった!!!悔しい!!! 問題へのリンク 問題概要 長さ の数列 が与えられます。以下の条件を満たすような、長さ の数列 の個数を 998244353 で割ったあまりを答えよ。 制約 考えたこと という条件は扱いづらいので、包除原理でやると良さそう。…
AtCoder
AtCoder800点
累積和テク:左右両端からの累積和や累積結果を前処理
ある量を固定して考える
ある量を決めるとGreedy
Greedy
DP
添字のとりうる範囲がlogオーダー
見積り大事
操作
最小回数・最小個数を求める
前処理
stack
データ構造
応用的な探索
数列
最適化テク:最適解の形を考える
ARC-E
ARC-like
黄色diff
累積和テク:累積和や累積結果を前処理しておく
DP高速化:stackの活用
操作をstackを用いて高速化する
最適化問題
こういうのを確実に... 問題へのリンク 問題概要 1 以上の整数からなる長さ の数列 が与えられる。この数列に対して、以下の操作を好きな回数だけ好きな順序で行うことで広義単調増加となるようにしたい。最小回数を求めよ。 個の整数から 1 つ選んで -2 倍…