kwm_t

kwm_tのメモ

ABC227

全体的に難しくない?
resulet:ooooxx--
perf:1898
■A - Last Card
愚直シュミレーション
■B - KEYENCE building
あり得る候補を配列なりsetなりで管理
■C - ABC conjecture
間に合うんだろうと思って実装すると間に合う。
計算量の証明は積分で。
■D - Project Planning
二分探索。オーバーフローに注意。
そういえば確かにABC-Fに類題ありますね。
■E - Swap
方針がそもそも難しいし実装も重たい。
Sから新たにTを前から作ろうとしたときの状態を
dp[i][j][k][l]:=iまで見たKがj個,Eがk個,swap回数がl;
のように持てばいい。

メモ化再起の要領でやると、
swap回数+残りの文字列をkeyに出来るので実装が簡単
■F - Treasure Hunting
K番目の数xを決め打ちする。
それ以上の数をk個数取ったときの最小値をdpで求める
dp[i][j][k]:=今(i,j)にいてk個x以上を通過した
ただし、xが重複しているときのことを少し丁寧に考える必要がある。
■G - Divisors of Binomial Coefficient
これ解けないの駄目駄目ですね。
kが少ないので、10^6以下の素数を列挙して
素因数を何個持つか、10^6より大きい素数を掛けると10^12を超過することより
方針はかんたんに立つ。
しかし、篩の容量で計算量を削減すればいいものもバカ正直に全て割ったせいで計算量。。。
■H - Eat Them All
これ難しいです。
どの辺を何回通るかを決めれば後はオイラー路(オイラー閉路)を決める要領で構築は可能。
重要なのは連結であること。
連結の場合、全域木を持つので絶対に使う辺を8つ決めdsuで連結を判定する。
それプラスα(使っても使わなくてもいい辺)のような形で考える。
プラスαの部分はフローを流しきれれば構築が可能。