ACM-ICPC 2018 国内予選
ICPC国内予選がありました。
なり、りあん、ぴろずのチーム「narianZ」で参加し、7完で2位でした!!!
人類1位
1位のチームは人間ではないので実質人類1位です!!!!! pic.twitter.com/jlNtxRGoPy
— りあん (@rian_tkb) July 6, 2018
東工大からは 11チームが参加して、おそらく3チームがアジア地区予選に進出しそうです
(まさか IQ1 が予選落ちするとは……)
ついに東工大にも熾烈な学内予選ができてしまった
— りあん (@rian_tkb) July 6, 2018
〜 チーム結成
去年の WF進出チーム「ninjaribaton」のメンバーの nari くんとチームを組むことになり、あと一人を探す
icpc のチームメンバーを一人募集しています
— りあん (@rian_tkb) June 1, 2018
今のところのチームメンバーは,レッドコーダーの nari と C++ が書けない rian です
一昨年の WF進出チーム「po」のメンバーの piroz さんに入っていただけることになり、narianZ が完成
今年の icpc, @_n_ari @p_shiki37 @rian_tkb のチーム narianZ で出ます!
— りあん (@rian_tkb) June 20, 2018
rian_tkb はチーム唯一の WF 未経験者かつ US配列できないマンかつ C++書けないマンなのでチームの印刷と睡眠担当です
チームの印刷担当なので最初の3分全速力で印刷して残りの2時間57分は寝ています
— りあん (@rian_tkb) July 5, 2018
ところで
チーム U Don すき
icpcのチーム名、ここが狂おしく好き pic.twitter.com/ansh6NwG6N
— りあん (@rian_tkb) July 6, 2017
去年の推しチームが今年もいて嬉しい pic.twitter.com/5R2A55fMgR
— りあん (@rian_tkb) July 5, 2018
模擬国内予選 (7/1)
模擬国内予選に参加しました
2018/Practice/模擬国内予選/順位 - ACM-ICPC Japanese Alumni Group
人類1位になる
上には人間ではないチームとGuestしかいないので実質1位です!!! pic.twitter.com/2w1y1V4dVP
— りあん (@rian_tkb) July 1, 2018
あまりコンテストの詳細は覚えてないにゃん
Bの考察・実装、Eの実装、F(誤読)の考察、F(本物)の考察を担当しました
— りあん (@rian_tkb) July 1, 2018
G は自明な考察を nari くんに喋ったらいつの間にか解法になっていた
— りあん (@rian_tkb) July 1, 2018
国内予選前日 (7/5)
夜になってから US 配列キーボードを買いに出る
今から icpc で使うキーボードを買いに行こうと思うんですけれども
— りあん (@rian_tkb) July 5, 2018
渋谷には虚無なキーボードしかなかったので秋葉原に向かい始めた
— りあん (@rian_tkb) July 5, 2018
— りあん (@rian_tkb) July 5, 2018
茶軸です pic.twitter.com/Jq51s27Xes
— りあん (@rian_tkb) July 5, 2018
ところでこれ、最悪みたいな形してないですか pic.twitter.com/wVmuOLYIzb
— りあん (@rian_tkb) July 5, 2018
国内予選当日 (7/6)
コンテスト前
夢の中でも icpc に参加する
夢の中でもicpcに参加していた
— りあん (@rian_tkb) July 6, 2018
夢の中で考えていた問題を書き起こしてみたけど、全く二分探索感がないように見える pic.twitter.com/WvMEpkoEeU
— りあん (@rian_tkb) July 6, 2018
narianZ に割り当てられた会場が普段あまり使わないところで、色々と困る
演習室、GCC が入っていない…
— りあん (@rian_tkb) July 6, 2018
エスパーにより GCC を見つける
勝ちました pic.twitter.com/nOwjGcJ6TU
— りあん (@rian_tkb) July 6, 2018
つらい
これ、本格的に無理みがないですか pic.twitter.com/2Df2GPgzcS
— りあん (@rian_tkb) July 6, 2018
ぬいぐるみが増える(ティッピーは大きすぎて持ち運びがつらいのでお休みです)
ICPC会場にテレビ持ち込んできてしもた………… pic.twitter.com/Rs3yUFrZ91
— 優勝~✌︎(˘ω˘) (@_n_ari) July 6, 2018
なんかふえた pic.twitter.com/lUjiqOcQ3a
— 優勝~✌︎(˘ω˘) (@_n_ari) July 6, 2018
コンテスト中
最初にぴろずさんが A、りあんが B、なりくんが C を読む。
印刷を待っている間 A の問題文を覗き見ていたら自明そうに見えたのでそのままぴろずさんに通してもらう。
その間に B を読む。明らかにやるだけだが折り返す方の長さの方が長いときに少しめんどいかもなぁと思う。
なりくんが C が一瞬だと言っていたので先にそちらを実装してもらう。
そのあと B を実装したが、高さと幅の入力が逆だと思ってたりして少しバグらせる。
コードを印刷したら3秒でバグに気づき(折り返す方の長さの方が長いときに死んでた)、AC。
自分が B に苦戦している間に D は全探索だという話になっていて、ぴろずさんが通す。
E, F がよくわからないね、ということを言っていたらなりくんが G は簡単な構文解析をしたらあとはしゃくとりをやるだけ、とか言い出して、「なんだこいつ、ついに頭がおかしくなったか…?」と思う(前半の構文解析は確かに難しいものではないが、後者のしゃくとりは普通にクソけわしいと思うんですが…)。
ただ E, F の解法が全然詰まっていなかったので、とりあえずなりくんに G を書いてもらう。
主に F の考察をしながら、なりくんが G のデバッグをしているなぁ〜、と思っていたらいつの間にかサンプルが合い、そのままテストケースも通る。?????? 本当に意味がわからない。
なりくんが G を通している間に F も実装の軽い O(N^2 log N) 解が閃き、また E も桁上がりのシミュレーションをやっていくだけだということがわかる(個人的には E は知識ゲーに見せかけて全然そんな感じではない(どころか逆に知識が邪魔をするタイプの問題)なのでけっこう良問だと思う)。
F より E の方が実装が軽そうだったので、ぴろずさんからなりくんに F の解法を伝言ゲームをしてもらいつつ、自分が E の実装をする。
適当に実装したらまぁまぁバグらせ、ぴろずさんに助けてもらいつつバグを取るもサンプルが合わないので、コードを印刷しつつ F を完全に理解したなりくんにコーディングをバトンタッチ。
コードを印刷したらミスを 3秒で発見した(入力を左右逆に取っていた)ので、割り込み実装をし AC。
そのままなりくんも F を AC し(実行時間は 30秒くらいかかった)、2時間20分ほどで 7完。
その時点では H は全く通されていなかったので、完全に集中力が切れて H を考えるフリをしながらぼーっとしたり順位表を眺めたりして過ごしていた。
UT a.k.a ls のペナルティが小さかったので G が解かれて抜かされることを覚悟していたが、運良く 2位のままフィニッシュ。
1位のチームは人間ではないので実質人類1位です!!!!! pic.twitter.com/jlNtxRGoPy
— りあん (@rian_tkb) July 6, 2018
A: 見てない
— りあん (@rian_tkb) July 6, 2018
B: 単純なんだけどバグる
C: 見てない
D: 気づいたら通ってた
E: 桁上がりの挙動を追えば自明
F: PriorityQueue を使うとしゃくとり的なことができて O(N^2 log N) になるので 30秒くらい待ちます
G: これを一発で通す nari くんはほんま頭おかしすぎる
H: 人間に解けるとは思えない
Bの考察実装とEの考察実装とFの考察をしました
— りあん (@rian_tkb) July 6, 2018
Clova Friends mini,MUJIN Tシャツ&ステッカー,freeeオリジナルノベルティ( Tシャツ,マグカップ,クリアファイル,付箋,ボールペン,ステッカー,布袋)
— りあん (@rian_tkb) July 6, 2018
がもらえるっぽい
コンテスト後
icpc国内予選打ち上げ二次会です pic.twitter.com/F48IM6PNyO
— りあん (@rian_tkb) July 6, 2018
チーム IQ1 pic.twitter.com/z8z0lnusBt
— りあん (@rian_tkb) July 6, 2018
まだ心が騒いでいるので一人で三次会です pic.twitter.com/mnSCmV9Sax
— りあん (@rian_tkb) July 6, 2018
感想
いい感じに解法を生成できて nari くんを実装マシーンにできたのが本当にうまく回りすぎた
— りあん (@rian_tkb) July 6, 2018
今日は nari くんが人外に片足突っ込みかけてたけど、だからといって自分も役割持ててなくはなかったので良かった
— りあん (@rian_tkb) July 6, 2018
narianZ,そこまで早解きが得意なチームではないが今回は序盤からそこそこいい順位にいた気がしていて,本当に非の打ち所さんがない
— りあん (@rian_tkb) July 6, 2018
今日気づいたんだけど,コードを印刷して赤ペン片手にデバッグするリアルプリントデバッグが得意すぎる
— りあん (@rian_tkb) July 6, 2018
しうかついやだー
あと、icpcに出ている間にイソターソのお祈りメールが来ていました
— りあん (@rian_tkb) July 6, 2018