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

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

DP値を利用して状態復元

AISing Programming Contest 2019 E - Attack to a Tree (600 点)

やっと会えたね、二乗の木DPたん... 問題へのリンク 問題概要 頂点のツリーがあって、各頂点には値 が割り振られている。今ツリーのエッジを何本か取り除いて何個かの連結成分に分けたとき 連結成分内に含まれる全ノードの頂点の重みの和が負の値 連結成分内…

AOJ 2370 RabbitWalking (AOJ-ICPC 600 点)

これを解いていたおかげで ARC 099 E - Independence がすぐに思いつけた感はあるかも。むしろ制約的に ARC 099 E の完全上位互換だと言える。 問題へのリンク 問題概要 頂点 辺の無向単純グラフが与えられる。 このグラフが「奇数長のサイクルがない」とい…

AtCoder AGC 004 D - Teleporter (800 点)

こういう系の問題、なかなか提出が怖くなるやつ。こういうのは背水の陣状態じゃないと躊躇してしまいそう... 問題へのリンク 問題概要 頂点数 、辺数 の有向グラフが与えられる。 どの頂点から出る辺数も 1 どの頂点から出発しても必ずノード 1 (root) にた…

yukicoder 733 分身並列コーディング

一見 な bitDP だけど、これはアレだ!!! よくある にできるやつだ!!!!! 問題へのリンク 問題概要 個の数 がある。これを最小個数のグループに分けて、各グループの合計値が 以下となるようにせよ。 制約 解法 とりあえず一見 な bitDP に見える。AGC…

AtCoder AGC 026 F - Manju Game (2000 点)

ふと考えてみた。区間 DP っぽく にはなるな...なんて思っていたけどそこから落とせなかった...いやこれ何を食べたらこんな二分探索思いつけるようになるの!?!?!?!??? なにかこういう場面で二分探索すると上手く行くよ、というパターン的なものが…

TopCoder SRM 694 D1E TryShell

いい問題だった。 問題概要 0 以上 255 以下の整数が n 個与えられる。 この n 個の整数を 3 組に分ける方法のうち、各組の xor 和の総和が最大となるものを求めよ。(制約) ・3 解法 dp[ i+1 ][ j ][ k ] := i 番目までみたとき、二組の和がそれぞれ j, k の…