/ 最近 .rdf 追記 編集 設定 本棚

log[20230709]



20230709() [AtCoder] 今日は ARC164 があったくやちいC 問題が ACったのがくやしい。コンテト成績表自分のすべての提出以下 ABC のふりかえりATernary Decompositionとりあえず3進数を考えます。純粋な3進数と違うところは各桁の上限が2に限られないということどういうことn=9 のとき3^0 ×9個が k の上限で3^2 ×1個が k の下限もうちっと書くと下限は3進数で表したときの各桁の和その範囲外なら No範囲内であればある桁を崩して1つ下の桁を3個増やすことができるつまり2個ずつなら調整が可能奇数個の調整は不可能BSwitching Travel白黒白黒……とパスを辿っていったとき白白もしくは黒黒の辺によって閉路が生じるなら答えは Yes だと思ったそれを BFS で実装したら WAったので UnionFind で実装し直して AC になった何が悪かったのかはわからない嘘ですわかります。白黒の辺だけを考えるときグラフが連結だとは限らないので一応すべての頂点を始点にして BFS をしたのだけど訪問済みフラグを流用していただから白白もしくは黒黒の辺で訪問済みの頂点にぶつかったときそれが異なる連結成分を結んでいるのか閉路なのか区別できなかったNN 要素の配列を確保することが許されないので流用したのだけど訪問済みフラグの値を工夫しないといけなかったらしいBFS/DFS でやるならねほら WAACCReversible Card GameB 問題の AC から1時間弱の時間が残っていたのだけどほぼほぼ途方に暮れていた何が最適な戦略なのかさっぱりだった終了 10 分前くらいから書き始めたのはこういうのまずカドを裏が大きい(AB)と表が大きい(A>B)で分ける裏が大きい(AB)ドについては何もすることがないってね全部のカドが ABったとしようBobAlice が引っ繰り返したそばからカドを得点に変えていくのが最善だから他にカドがあるときに Alice はひっくり返さないしBob もまだ取らないでは A>B のカドについてはどうこれは A-B が大きい順に AliceA を隠す(裏が大きいカドに混ぜる)Bob がカドを得点にするということを繰り返す。表が大きいカドが1枚だけ余ったらうまいこと考えるそれがサンプルの1なんで終了6分半後に ACったんだよC 問題はもっと単純だったらしいB の大きいペア数が奇数のときは1 枚だけ低い値をとらされるようだ低い値は何を取らされる? Alice がどうがんばってもBob は最もリスクの低いカドを選ぶことができるようだabs(B-A) が最も小さいカドを選べばいい 言われればそうAlice が裏返して隠した表が大きいカドも後半戦で裏返すそばから Bob に得点に変えられてしまうのだから