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

log[20240921]



20240921() [AtCoder] 今日はユニークビジョンプログラミングコンテ2024 ABC372があった脳みそがスポンジ化しているこのごろは最初に問題をざっと読むんだけどE までは普通に解けると思ってF 問題に時間をかけて考えて解けるかどうかだと見通しを立ててから A の実装に取りかかった番狂わせの D 問題E 問題を終了 20 秒前に提出するのがやっとだったAdelete .String#tr メソドは文字の削除もできます。つい最近他の人の提出で見るまで知らなかったけどString#delete というメソドもあります。B3^AN が出力の制約だと気がつくまで時間がかかった10 万個の数字を出力してもいいんですかと確かめるつもりで問題とサンプル(の上の方)を眺めてもまだわからなかった制約さえ把握できたらあとは3進数Integer#digits メソドは基数を引数に取るCCount ABC Againつどカウトするわけにはいかないから置換前に ABC の一部であればカウトを1減らし置換後に ABC の一部であればカウトを1増やす。これも実装で下手をして答えが合わなかったクエリの x を2回使うのでx を変更するのではなく別の変数にコピーしてから変更していたのだけど最後に別の変数を参照するところで x を使用していたDBuildings来ました D 問題21:26C 問題を提出してから 22:25D 問題を提出するまでほぼ1時間ぐだぐだやっていた問題が全然頭に入ってこないのったい何を数えるんだよ問題を完全に理解したのが 2220 分! 理解したら実装は5分ビル i とビル j の間にビル j より高いビルが存在しないという ij のペアを数えるんだけどっとねi のビルの高さはなんにも関係ないんだよサンプル1の解説とサンプル1の出力例を突き合わせて自分の理解の誤りが明らかになったのが 2220 分だったのだ出力形式もやっかい合計じゃないんだよさりとて j を基準にした数字でもないんだよ問題を解く筋道を規定されるようでとことん振り回された解法は後ろから見ていって増加列の列を管理するいや……ただの増加列なの無駄なことをしたかもEK-th Largest Connected Components一読してスター型のグラフに殺されるなどうしようかなと考えたときに k10 以下との制約が目に入って解けたと思った連結な頂点のことを隣接頂点だと勘違いしていたのに気がついて途中で UnionFind(頭の中から)っぱり出してきた連結な頂点に自分自身を数えることも最初はわかっていなかったArray#max メソドの戻り値がソト済みではないと知らなかったそんな感じで実装に 15D 問題のせいで解ける E 問題を落とすのは悔しすぎるので残り 20 秒で間に合って良かったFTeleporting Takahashi 230 分から1時間を残してじっくり考えたかったけどすべては D 問題のせいF 問題K×N の表を作成していてKN がどちらも大きいんだけどk 行目の値を決めるのに斜めに k 項の和が欲しいk の2乗はダメだ左にあって一番近い意味のある頂点が t 個前にあるとしてk-t 番目の値を参照すればいいのかなF 問題。TLE×8TLE×27TLE×12なんで最初が一番ましなの最初だけ送っていてあと2つはもらっているTSP 問題ではもらう方が速いのだけど逆に遅くなる理由がどこにあるのかわからないAC でも Ruby の他の提出では全部で4つの AC がいずれも 1500 ms 前後しかかけていない自分のはやっとで 2055 ms25 % 遅い正直なにが ACTLE を分けたのかもわかっていない他の人の提出を読んだ(眺めた)けどなんか遷移がシンプルだよねDP のために用意する配列のサイズが N+Kったり N から継ぎ足して N+Kったり最初から最後まで Nったりもする自分は 2M×K の2次元配列()を使った明らかに何かが違って効率が悪いむむむC 言語では2次元配列と配列の配列(jagged array)を区別するけどRuby には片方しかないので……■たぶんだけどある頂点の場合の数を記録している添字をずらしていくことで1つ先への移動をーコトで行うんだと思う初期にはそういうことも考えていたけど移動したら移動元には場合の数が残らないはずなのに考え違いをしていて一歩ずつ加算していかなければいけないような気がしていた今日も実装を始めたときにはまだその勘違いをしていて過大な答えが出たりしていた勘違いで解法を潰してしまっていた。提出 #58036342 (AC / 1430 ms)ほらね1500 ms グループの仲間入り提出の中でなんで y から x を引いてまた x を足してるのかはわかりません差分が生きるような気がしたけど気の迷いだった