/
最近
.rdf
追記
編集
設定
本棚
翌日へ
前日へ
脳log
[20240518]
2024年05月18日 (土)
[AtCoder] 今日は
パナソニックグループ プログラミングコンテスト2024(ABC354)
があった。8時半をまわってから2回もハードウェアエラーでブルースクリーンが出て、Rated で参加するのをためらったけど、コンテスト中に再起動が必要になることはなくて助かった。ていうか、再起動してもダメなんだよ。ブートデバイスが見つからないって出る。つまり、起動中にいつの間にか C ドライブを見失っていて、それがスリープ移行中や復帰中に発覚するとブルースクリーンが出る。それ以外のタイミングだと IO 待ちで一部のプログラムがフリーズするのみで何もできなくなるまでにわずかの猶予がある。いずれにしろ再起動しても C ドライブを含む SSD は見つからないまま。SATA ケーブルを抜き差ししてお茶を濁すということを1年以上前から続けている。数回のブルースクリーンでパーティションが飛んでいた FAT32 と比べて一度も壊れたことがない NTFS の堅牢さは素晴らしい。もちろん、ファイルシステムが壊れていないからといって個々のファイルが壊れないわけではないのだけど。という話はもういいや。結果がまだなのでふりかえりから。■A 問題「
Exponential Plant
」。やります。朝と夜の区別が地味にやっかい。脳のリソースが奪われる。サンプルの解説文に何を判断基準にするか、何を答えるかが書いてあるのでそれを素直にコードにする方が早かった。■B 問題「
AtCoder Janken 2
」。やります。A 問題より素直。■C 問題「
AtCoder Magics
」。強さの順もしくはコストの順に処理をする。今見ているカードを基準にして捨てるカードを捨ててから追加する。スライド最小値の要領。■D 問題「
AtCoder Wallpaper
」。前回の F 問題
Tile Distance
と似た見た目の図があるけれど、D 問題ということで素直に計算できるのかなと期待する。2倍した面積を答えるのだから、三角形の数を数えればよい。X 軸方向の周期は4で、 Y 軸方向の周期は2だから、単位面積当たり計8通りのパターンがある。あとはそれぞれの数を数える。自分は頭より先に手が動くタイプなので、スマートな式を考え出すよりも case 式で場合分けをいっぱい書いた。場合分けの数だけバグが潜む場所が増えるのでリスキーではあるが、考えても答えが出て来ないリスクも無視できない。■E 問題「
Remove Pairs
」。先に F 問題までひと通り目を通してから実装を始めることにしている。泥沼にはまりかねない D 問題に対して E 問題は素直にメモ化再帰をするだけだと思ったので先にこちらを解いた。6分半で書いた最初の提出が TLE で、そこからペナルティ込みで 17 分余計にかかったのが残念。ABC349-E
Weighted Tic-Tac-Toe
が解けたら解ける。■F 問題「
Useless for LIS
」。左右から LIS をやって自分の左の増加列と右の増加列の長さ+1が、自分を含む増加列の長さ。これが最長と一致しているかを確かめる。LIS のやり方を忘れていて思い出しながらの実装だった。でも、LIS というのは
トランプ挿入ソート
を解いていたこのとき(
20200602p01
)に、名前も実装方法も知らないで解法を考え出した経緯があるので、思い出せないはずがない。忘れてもでっちあげられる。■日記を書いていたら結果が出た。
コンテスト成績証
。
自分のすべての提出
。1895 の青パフォで +33、レートは 1631 (青色) になりました。初めて青色になりました。ここ3回の ABC、ARC、ABC で +52、+24、+33 というのはできすぎた結果なので、すぐに水に落ちた後で水青の反復ができるとも思ってないよ。
翌日へ
前日へ