ICPC 国内予選 2019 参加記

ICPC国内予選に参加しました。

今年で4回目、結構な数になってきました。

今年のチームは私とmamumamuとこーはいちゃん*1のチーム「seica on the border」ででました。

毎年チームメンバー変わってるんですよね、来年はどうかな?とりあえず全員どこかに行く予定はなさそうです(多分)。

コンテスト前

最近やってなかったのですが久しぶりに心配になってやってしまいました。

おかげでちょこっと遅刻、これによるタイムロスが10分とかなので問題は他のところにありそうです。


会場について準備を整えます。

毎年リハーサルから本番までの時間の使い方に困ってます、今年はこーはいちゃんに F - Colorful Tree を教えていたり、mamumamu
に「Aで詰まったら私しゃぶしゃぶ食べたい」とパワハラ(?)をしていたりしました。

コンテスト

予定としてはmamumamuがA、こーはいちゃんがB、私がC。その後みんなでD,Eという感じ。

ということでコンテスト開始。

mamumamuがAでWAを出します、パワハラは良くない、nとmが違っていたのにすぐ気がつきAC

こーはいちゃんがその間にBを詰められていたので実装を二人でやってもらって、その間に私はCの方を進めます。

C、「全部試してみれば良さそう」だと思い考察を終わらせ、Dを読みます。D、区間でいい感じにしたくなります。

Bが通ったとのでCの実装、一通り書き終わった段階で気がつきます「解いている問題違った。」

分銅は天秤のどちらにものせれるんですよね、片方にしかのせてませんでした。頭が真っ白になります。頭がぱっぱらぱー*2になってしまったので二人にヘルプを頼むと秒で正しい解法が帰ってきます。


「全部試せばいいじゃん」


それはそうなので実装します、少しバグりかけましたがAC。

さてD、(余計に一周させるものをデフォルトで必要な回数の少ないものから順に増やしていったのち)区間のdfsでいい感じにしたくなっている私はそれを書くとサンプルが通るので投げます -> WA

うまい判例が思いつかずに困ったのでチームで話し合いに入ります。

ちなみにこの時はDはそれでいけそうな気持ちになってたのでEを考えていてもらってました。

確証の持てない考察がずっと続きます。そもそも前の解法がどう違っているのかがわかりません。ずるずる引きずられていきます。

順位的にもこのままだと予選通過は怪しいので肝が冷え始めます。なにがちがうのー??

ふと見ると、こーはいちゃんが私のやつが無理そうなのを聞いて

dp[i][j] = i個目を見ている、前はj週余計に回している

を考えていました。

遷移に詰まってたみたいですがdpの定義に関しては事象の網羅はできていそうな気(少なくとも余計に回す回数が一回とは限らないという面で考察が進んでいた)がしたので頭そっちに切り替わり、遷移を考えます。

考えると遷移が詰められたので実装すると違う値が出てきます、困った。この時点で残り時間が30分とかでさらに肝が冷えます。

とりあえずデバック、見にくいからと処理のサイズを変更(1111*1111でdpしていたのをn*nにした)して回すと正しい値が出てきました。

よくわからないけどそれっぽいから投げちゃえと投げたらAC、えーって言います*3(あとで配列外参照していたことに気がつく)

4完です、この時37位くらい、予選通過できそうなことに安堵します。

Eについては二人から頑張ればできそうと聞いていましたが、今から始めるには時間がないので厳しいねって言いながら順位表眺めたりFちょっと考えてみたりしました*4

コンテストおしまい。

反省

私全然活躍できてませんね、困った。チームメイトには感謝です。

今回で2回目のチームでのコンテストだったんですが、話し合いがちょいちょい噛み合わない面とか立ち回りが良くないところ(これは私が基本的に指示してたので私の責任なんですが)がありました。不必要なタイムロスが色々とあったように思います(考察が間違っていたとかバグが埋まったとかそうゆうものは仕方ないとして)。

練習不足ですね、得意不得意の相性は良さそうでうまくできればもっとパフォーマンスが上がりそうなので頑張りたいところです。

個人としてはこれで4年連続アジア地区予選に参加できることになりました。嬉しい話です、楽しみたいと思います。

おまけ

その場の勢いで「seica on the border」なんて名前にしましたがアジア地区の時点で何かしらボーダーに乗せておかないとなっていってます(今はAtCoderのレートが黄色のボーダー付近、これをあと数ヶ月続けたくはないです)

*1:HNがわからないのでこーはいちゃんとします

*2:間抜けで阿呆であるさま。「ぱあ」を強めた語。(weblio辞書より)

*3:えー

*4:おいおい