CodeThanksFestival2017参加記
はじめに
この記事はkstmアドベントカレンダー2017 7日目の記事として書かれました。
目次
行く前
まずは予選から。CodeFestival2017本戦は、人数が去年に比べて大きく減ったのでボーダーが上がったのと、仮に通っていてもISUCON通っていればISUCONに行くと決めていたので、Thanks行ければいいやーって感じの低いモチベでした。
予選Aは例年通り、かなりボーダー高めで通すのは難しそうでした。三問といて879位(日本人452位)。
予選Bはカプセルホテルでやりました。三問解いて289位(日本人119位)。
予選CはISUCON7予選終わった直後から始まった地獄でした。めっちゃしんどかった・・・。三問解いて350位(日本人145位)。
BかCのどちらかで通ったんでしょう。
CODE THANKS FESTIVAL通った、やったね!
— 馬 (@Goryudyuma) 2017年10月31日
前日
夕方ごろ、新幹線で東京まで。池袋で少し遊んでから、株式会社Aimingさんのオフィスに遊びに行ってました。
寿司食べながら駄弁りながら飲みながら競プロしながらボドゲするというよくわからない会でした(笑)。キーボードの変態配列の話、とても面白かったです!ありがとうございました!
この後から結構大変でした。電車で上野駅まで。
新幹線の中で予約した、一泊1500円の見るからにヤバそうな宿に行きました。
とりあえず、夜中、今いるホテルに入った。上野駅から徒歩10分で一泊1500円という劇ヤバだったけど、まあ寝れたのでいいんじゃないでしょーか。
— 馬 (@Goryudyuma) 2017年12月1日
そのあとスマホが起動しなくなって、Wi-Fiも死んで、疲れて寝て、起きてから必死の復旧作業ですよ。
宿は四人部屋で、僕含めて三人で使いました。いびきとかうるさい人でもなく、めんどくさい絡みしてくる人でもなく、平和に過ごしました。
宿は良かったんですけど、スマホが壊れました。OSがうまく起動できない?みたいな感じでした。出先で宿のWi-Fiもかなり不安定でしたが、スマホ使えないと色々お話にもならないので、復旧を決意。OSをクリーンインストール?とりあえずBIOSからいけるResetを全部して、Androidのインストールバトルをやりました。一番困ったのが、Googleアカウントの2段階認証をやってる端末を吹っ飛ばした状態で、かつ非常用パスコードを保存している端末には出先のためアクセスできない状態だったってことですね。粘った末に電話認証に気づいてうまく行ったんですけど、かなり時間使いました。
OSのアプデ、アプリのアプデを不安定なWi-Fi環境で行いました。かなり辛かったけど、サークルのインフラ班のあーちゃんとふぉのさんが普段言っていたことが、ものすごく役立ったりと、様々なファインプレーが重なった末、朝8時半頃に復旧。ホテルを出て(本当に1500円しか払わなかった、東京すごいですね)、地下鉄で豊洲を目指しました。途中、銀座一丁目と銀座駅が同じものだと思ってたっていうミスがありましたがうまく有楽町駅にたどり着けたためセーフ。豊洲からゆりかもめで会場に向かいました。
当日
会場ついて、交通費精算して、TシャツGetして、周りに挨拶して、お弁当Getして、コンテスト開始。1800点以上でパーカーと聞いてテンションMAX。
A:Sortするだけ
B:回文となる文字列の文字数は奇数個と思い込んで1WA。しょーもないWAは無くして行きたい・・・。すぐ直してAC。
C:PriorityQueueで管理するだけ。AC。
D:ぱっと見でわからなかったので飛ばす
F:同じ数ずつまとめて、Combination計算してやろうとしたが、どこかでバグって1WA。mapでdpしてやるとなぜか正解した。
D:戻って見るとGCDとるだけと気づく。AC。
E:6^5<10000に気づく。6個ずつ確定していけば終わりそう。書いてAC。パーカーゲット。
G:PriorityQueueで適当なコード書いたけどTLE。ダメダメ。
H:H+M個のメモリをとってやり、うまく飛んでいくような感じで書いたけど二ケースTLE。
これで終わる。6完34位でした。
コンテストおわって、パーカー受け取ってからchokudai先生のライブ解説。
その時のF問題の指摘で、
ケースの構築された理由は,メモが65535までの数字が埋まっていて、かつ全てに対して1でなめてやる必要がある状態が最悪ケースだと思いました
— sio_tet(永世絶起) (@sio_tet) 2017年12月2日
と、最悪ケースでTLEになるかもしれないとの指摘。理屈で考えてもダメだし、手元でやって見ると確かにTLEになる遅さ。
TLEケースは入れてあったけど、map解法を想定していなかった。
— ヘクト_クリアカラー🐬(D73/85) (@osrehun) 2017年12月2日
出題者曰く想定外の解法だったらしく、まぐれで通ってしまった。パーカーボーダーラインだったので、助かったというかなんというか。もしこの回答がTLEときちんと判定されてたら、ちゃんと時間内で解けたかは謎・・・。
そのあと、交流会。一つ質問を決めて、参加者に聞いて回るってイベントがあったんですけど、僕は単純に思いついた「好きな数字」っていう大雑把な質問をして回りました。面白いことに、40人弱聞いて回りましたが、かぶった数字は2と17だったかな、意外とみんなバラバラな数字書いてくれました。πとか1e9+7とかeとかもあって、ああ競プロの集まりなんだなあと思いました。
回答集めるのそこそこ早かったっぽくて、タンブラーもらいました。今回はいいものばっかりもらった!そのあとは、肉食って寿司食ってサンドウィッチ食ってジュース飲んでってやってました。競プロ疲れたのと、スマホのせいで少し寝不足なのもあって、めっちゃ食べた。
表彰式があって、解散したあとは、すぐに長野へ帰りました。途中ゆりかもめから花火が見えて、綺麗だったなあ。
終わりに
信州大学ものづくりサークルkstmでは、競技プログラミングに興味ある学生も募集しています。ちょっとでも興味あれば、ぜひよろしくお願いします!