けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

DP状態:on/off

AtCoder ABC 307 E - Distinct Adjacent (1Q, 水色, 475 点)

共通テスト数学 IA にも似た問題が出ていた! 問題へのリンク 問題概要 頂点数が のサイクルグラフが与えられる。このグラフの各頂点を色 のいずれかの色で塗る。 どの隣接する頂点対も異なる色で塗られるようにする方法の個数を 998244353 で割った余りを求…

CodeQUEEN 2023 決勝 E - Good Partition

これは学びの深い DP 問題! 問題へのリンク 問題概要 長さ の数列 がある (負値もありうる)。これらの数列をいくつかの連続する区間に分割する。 区間分割の仕方を最適化したときの、各区間における「最大値と最小値の差」の総和として、考えられる最大値を…

AtCoder ABC 303 D - Shift vs. CapsLock (2Q, 茶色, 400 点)

ランレングス圧縮をする問題に一瞬見えるかもしれない。でもそんなことしないで、最初から最後まで綺麗に DP で殴れる! 問題へのリンク 問題概要 文字 'a' と 'A' のみからなる長さ の文字列 が与えられる。 以下のキーボード操作を繰り返すことで、この文…

AtCoder ABC 245 C - Choose Elements (3Q, 茶色, 300 点)

EDPC C - Vacation と良く似た問題だと思う!! あと、幅が狭いグリッドでは DP が疑われることが結構多い! 問題へのリンク 問題概要 長さが の数列が 2 つ ( と ) 与えられます。 各 に対して、 と のいずれかを選ぶことで、新たに数列 を作ります。 こう…

AtCoder ARC 058 E - 和風いろはちゃん (3D, 橙色, 700 点)

5 + 7 + 5 = 17 なの、よくできてる! 問題へのリンク 問題概要 正の整数 が与えられる。 以上 以下の数値からなる長さ の数列 であって、以下の条件を満たすものの個数を 1000000007 で割ったあまりを求めよ。 整数 が存在して、 の区間 の総和が の区間 の…

AOJ 2566 Restore Calculation (JAG 模擬地区 2013 B) (350 点)

これが生まれて初めての作問だった!!! AOJ-ICPC で ☆4 個ついてて嬉しい! 問題へのリンク editorial 問題概要 虫食算が与えられる。解の個数を 1000000007 で割ったあまりを求めたい。 より正確には長さ の 3 個の文字列 が与えられる。これらは '?' か …

AtCoder ABC 098 C - Attention (ARC 098 C) (茶色, 300 点)

累積和の典型問題 問題へのリンク 問題概要 WWEWEEWWEE のような文字列が与えられる。 文字列のうちの 1 つの文字を選んで、その左側をすべて E に、右側をすべて W にするのに必要な変更量の最小値を求めよ。 制約 解法 累積和を用いる。 #include <iostream> #includ</iostream>…