今日は競プロの気分だったのでVulkanの記事更新はさぼった。というか大体目標地点まで理解できたところなので解説を書くモチベが下がっている…明日は書くか。サボっていると使命感まで燃え尽きてしまいかねない。
今日解いた競プロの問題。
ABC230-D 自力AC。右端でソートすればいいだけだが、既に壊した壁を無視するための実装方法に若干迷った。先頭から見て行って初めて発見した「まだ壊れていない壁」を採用すれば問題ない。その壁よりも後ろに「既に壊れている壁」が含まれている可能性はあるが、結局そのような壁は後々改めてスキップされるだけなので、変なことにはならない。
ABC233-E なんか累積和を適当に振り回すとAC。繰り上がりの実装も大して迷わなかった。
ABC230-E 自力ACしたが死ぬほど疲れた。√Nより上と下で処理分けて√N以下の数が何回現れるか数えて…っていうのはなんか前にも見たので方針はすぐにたったが、細かい部分の処理に死ぬほど悩まされた。本質でない部分の処理に無限時間費やすのやめてえよ。結局整数問題で境界の扱い方に迷った場合は、実験してみた上で図を書いて「境界より下の最大値」と「境界より上の最小値」をしっかり認識するのが良い。
ABC217-E 5分で自力AC。
ABC218-E グラフは切るより繋げる方が楽なので、逆から見ていく典型。「最小全域木」という言葉にはもう少し早く思い至りたかったな。(名前は本質ではないが)
ABC228-D 自力AC。setに全部整数詰めて1つづつeraseしていく力技で難なく解いたが、本当は区間とかを持つべきなんだよな。mexとかもいつもこの力技で解いてるので、ちゃんと区間を持つ軽い実装はいつか身に着けたい。(今やれよ!)
ABC216-D 自力AC。マジでやるだけなのに細かいところをバグらせまくった。計算量改善のために要素の配列上における位置を記録したりしていると、要素の位置と要素の値がごっちゃになってくる。このへんバグらせにくい実装を身に着けたい。多分他の人の実装を読むのが吉。
ABC240-E DFSやるだけ
ABC223-D 辞書順最小に気を付けながらトポロジカルソートやるだけ
ABC239-E 一見クソむずいがKi≦20なのでギャグ。前計算でDFSやるだけ Kiがでかくても解けるのだろうか?
ABC216-E 一番楽しいアトラクションからやっていけばいいが、Kがくそでかいのでまとめて処理する。難度自体は高くはないが数式こねるのが面倒だった。解説だとにぶたんしてた。あーーー確かににぶたんでどこまで楽しさが下がるまでいけるかだけ確認してからガーっとやった方が楽だし確実か。負け。
昼飯の後に眠くなり本日終了になりがちだったので昼飯の後にジョギングをする、という昨日の考えを試してみたところ効果てきめんだった。午後も作業が進んだ。
しかし走った後で筋トレは出来たものではなかった。これで2日連続さぼっている。よくないな。両立できるか?明日はやりたいが、明日もだめそうだったらちょっとルーティーンを再考してみよう。
Categories: 未分類