やむなく日記

競プロやCTF、ゲームなどの日記を書きます

模擬国内予選 2020 参加記

前日13:00~14:00 PGバトル

時間はかかったが満点を取れたのでチームの信頼を維持

前日14:00~16:00 BGA

SOLOとパパヨーと東海道をした記憶がある

前日 16:00~21:00 睡眠

前日 21:00~23:00 ARC106

フローを流すことにこだわったら冷えた

前日23:00~当日3:00 among us

初プレイ、インポスターがむずすぎる

当日 3:00~10:00 起きている

何してたっけ?最近こういう時間が多くて何もできない

当日 10:00~13:30 睡眠

起きて起床確認をしたら heno 君が寝ている

当日 14:00 コンテスト開始

ゆっくり準備してたら数分遅刻した、いくぜ!

遅刻してたので A は moririn 君に任せた

B

爆破できる爆弾があれば爆発範囲をみて、まだ爆破できないと思っていた爆弾があれば爆破できることにする

UnionFind を考えたが書かなくても解けるっぽいので切り捨てる(後から考えると、爆弾のペアを全部チェックしても間に合うので、こっちのほうが楽そう)

なんか初期地点の爆弾しかチェックしないバグを埋め込んだけど直して AC

B をやってる間に A が通ってるので C を moririn 君に任せる

D

こういうのは両端に括弧をつけるのが一番いいってのを信じる

列を左から見ていって必要になったら左に(を付け加える、これを逆からもやればなんか通るやろと思って書く

WA

バグがあったので直してまた提出

WA

出力をよく見たら1回目と2回目で内容が変わっていなかったらしい、diffをちゃんと取りたい

Dを書いてる最中に heno 君が起きてきたので E をやってもらう

問題文を見直すと、()括弧列) が実は invalid で、()())) みたいなので落ちてるっぽいことが発覚

括弧列を挟んだとき、その左右にある)の列はまとめずに別にして処理すればよさそう

書き直して 1 つめのケースが AC

2 つめのケースも AC したが、よく見るとソースコードがちょっと違うと言われている

ソースコードだけ昔のやつを提出していたらしく、新しいものを出しなおす必要がある

2 つめのケースは間違ったソースコードで通してしまったので、もう使えない

もうケースが 2 個しか残ってないので、昔のファイルを全消しして 5 回くらいチェックして提出する、AC

E はにぶたん→実行が終わらない→しゃくとりを経て AC したらしい

まだ C が通ってなくて大変そうだけど、実装が原因だろうし終了までには通るやろと思い任せる

実行を待ってる間に heno 君は F を考えていた

F の実装方針を決める手伝いをする、ダイスライブラリがある heno 君に書いていただく

H

G と H しか残ってなくて、数チームが解いてる H を読む

こうするのが最適って数回言うとシンプルな線形計画になる

フローっぽいけど昨日の ARC があるので流すことにこだわらなかった

見方を変えると DP っぽいのが浮かび上がってきたので書く

書いてる間に F が通ってすごかったので、heno 君に C のサポートをやってもらう

H が書き終わるがサンプルが合わない

辺の向きを逆にしたら合ったので提出してみると AC

C も AC したらしい、ナイス~

残りは G

幾何の実装はしたことがないので、heno 君に書いていただく

その間サンプルをひたすら作った

頂点間以外の移動が大変らしくて間に合わず…

 

f:id:yamunaku:20201026092845j:plain

ペナルティ42185 秒の重量感を漂わせながら、7 完で 5 位

 

反省

ちゃんと寝る

前日にチームメイトにリマインダを送る

問題文をちゃんと読む

古い解答は消す、必要なら別のとこに保存する

再提出では解答の diff を取ってみる

C を見ずに H を解きに行ったのはリスクが大きすぎた

コマンドプロンプトが使いにくいので WSL を入れた

幾何の訓練をいつかやりたい