2022/11/13(日)
昨夜は1時くらいに寝たのだが、今日は10時過ぎまで寝ていた。定常的に
ジョギングをした。2.5kmほど。
今日解いた競プロの問題。
第二回プログラミング王決定戦予選-D: 区間に辺を張るテクをやるだけの完全な練習問題。知識としては知っていたが初めて実装した。例えば「ある点から端まで」みたいな制約のある区間のみ扱うならば考える仮想的な頂点はシンプルな感じで済んだりするが、今回はそういう制約はない任意の区間なので、セグ木みたいな二分木を真面目に実装した。頂点数としては$O(N+M)$個、辺の数としては$O(N+M\log N)$本のはず?これをダイクストラに突っ込むので計算量としては多分$O((N+M)\log(N+M))$になる。
ちなみに解説を読んだら頭のいい方法で二分木を使わずやっていた。こういうのを思いつけるとより良いのだろうが、汎用的なテクを知っていることでこういうのを思いつかなくても力業で倒せたという見方もできる。
筋トレをやった。今日はスクワット。
筋肉体操のブルガリアンスクワットが今一つ効かせきれていない気がしていたので、今日は重心をやや前にしてみた。よりちゃんと前の足だけで身体を支えている感じになった気がする。
Categories: 未分類