近所のホームセンターで高ナットが安く売られていた。秋月よりも近場で安く買えるとなると今後も利用しそうだ。
ABC273に参加した。知識や発想力よりも集中力で負けた感がある。
A: やるだけ
B: 四捨五入は$5\times 10^i > X \rightarrow \lfloor X/10^{i+1} \rfloor\times 10^{i+1}, 5\times 10^i \leq X \rightarrow \lceil X/10^{i+1} \rceil\times 10^{i+1}$みたいな感じにする。
C: 座圧して位置を見れば「より大きいものの種類数」はすぐに分かる。あとはやるだけ。
D: H,Wがデカいのを完全に忘れていた。本日の負けその1。
E: 数列Aの末尾さえ取れれば良い、末尾を付けたり消したりする、ということで変化するAを木で表現する。ページは木上の位置に対応させればよい。
D: 原点から左右にどこまで到達したか、現在左右端どちらにいるか、というのを状態に持ってDP。左右の最大到達位置さえ保持しておけば壁を破れるかどうかは$O(1)$か$O(\log N)$で判定できる。制約から位置の種類数は最大3000程度であり、$3000^2\approx 10^7$程度のオーダーで済む。
壁の位置とハンマーの位置を取り違えてACを逃した。本日の負けその2。黄diffにコンテスト中に喉元まで迫ったことには満足しているのだが、なおさら悔しい。
解き方の本質的な部分の考察能力は全く解答のボトルネックになっていなかったと感じる。眠くても細かいところに気を付けられるようにならなければ。というか集中力というより読解力、自分の誤読を疑える能力のような…
ちょっと必要に駆られたのでsocket.ioをいじっていた。nodejs+express+socket.ioという構成。
作ろうとしている物の性質上、socket.ioのサーバサイド処理でセッションクッキーの内容を使う必要が出てきたのだが、socket.ioのイベントハンドラではexpressによるリクエスト情報などを受け取れない。色々調べた結果、手段はあるようなのだが、どうにもめんどくさそうな臭いがぷんぷんする。結局最終的にアプリの根本的な設計を見直すことでセッションの内容をsocket.ioから扱わなくても良くなった。
筋トレをした。今日は腹筋。しばらくやってなかったせいか、よく効く。
Categories: 未分類