ABC314に出た。
A: やるだけ
B: やるだけ
C: やるだけ
D: ナイーブにやると操作2or3がO(N)なのでO(QN)になってしまう。しかし操作2or3をやると前回の操作2or3の影響は全く関係なくなるので、最後に行われた操作2or3のタイミングだけ覚えればよい。なので操作1と最後に行われた操作2or3だけを順に行えばよい。
E: DP[i]=(iポイント持っているときにそこからMポイント以上にたどり着くまでのコストの期待値)としてDPで求めて行けばよい。DP[M]=0から始めて最後にDP[0]が答えになる。普通に式を書き下すとS_ij=0の時にループが発生するので、そこだけ特別扱いとして移行しループを消す。
F: 2分木構造が見える。各ノードが(あるタイミングでの)チームに対応する。下から順に伝播させて各チームの人数を計算し、上から順に伝播させて各チームの期待値を計算すればよい。2分木構造を復元する処理に手間取った。チームを(人数, 元となったチーム)という組で表すことにし、UnionFindで併合→新しいチームを追加というのを順にやっていった。
G: 解けず。ある数のお守りが使える場合に何匹モンスターが倒せるか計算していく感じの方針で考察していたが、解説を見たらモンスターをある数倒す場合にいくつお守りが必要か計算する感じだった。
ノートPCケースが作りたいので材料を購入した。以前にフェルトのみで作った超シンプルなケースを作ったが、不満点が出てきた。
- マジックテープなどが軽く触れるたびにべりべりとくっつく。
- すぐに型崩れする。ケースに入れるというよりカバーをかぶせるという使い心地に近い。
この問題点の解決策として、表地をデニム地にすることにした。PCに傷をつけないように裏地は引き続きフェルトにする。それから補強のため表地と裏地の間にプラ板を仕込む。それから、どうせなのでチャックを付ける。バージョン2で目指すのはこのあたり。
自室の配線がヤバすぎるので多少なり整理した。とりあえずHDMIケーブル、ネットワークケーブル、RCAケーブルをそれぞれでまとめたら多少見た目がすっきりした。無数の電源コードは依然として手のつけようがない。
Categories: 未分類