ICPC 2019 Asia Yokohama Regional参加記

ブログに参加記をあげてる人はプロと思っているので俺もプロになるんやという気持ちではてブロ開設しました

早速ICPCの参加記を書いていこうと思います

 

前日まで

カラオケでチーム練を何回かした

問題は去年一昨年の横浜で、時間の使い方が難しいなーと思っていた

実際に何回かやってみないとチームの役割分担とか分からないのでチーム練は大事。

 

1日目

チームで集合して昼御飯食べて会場に向かう

知ってたけど、やっぱり受付が英語だとビビる

聞き取れなかったらとりあえずThanksって言っておくと良い

 

通路が一方通行になってて入口の近くの机なのに辿り着くまで会場一周歩かされた

「トイレとか行くのにかかる時間公平にするためにこうなってるのかな」って言ってたけど気付いたらパーテーション無くなってた

トイレ近くて良かったです。

 

英語をノイズとして聞き流しているとpracticeが始まった

 

チームメイトが環境を準備してる間に問題を読む

Aはやるだけ、CとDはチーム練でやったやつだったので秒で読み終わってモニターを眺める

Aの問題内容を伝えて実装してもらい、Bを考えます

分からん

とりあえず練習としてわざとWA提出しておこうよ、とか言ってみる

ある値が部分文字列として現れるかは簡単に調べられるので、答えか実はあんまり大きくならないことに気付くと解けます

 

チームメイトにBの考察を任せて写経やった以外は、実装もすべて任せて遊んでた

Dで無限にバグらせてるみたいだけど俺に出来ることはないので眺めてるだけ

 

Team Introduction

ウケなかった

 

ABC145

5完遅解きでレート-3

順調にレートを下げていく

立ち幅跳びの跳ぶ前のしゃがんでるとこなので

 

2日目

朝から体調回復したチームメイトがtwitterに出没してたけど、集合場所には現れない

 

なんとか集合してcheck-inを済ませる

眠気冷ますために一気飲みした魔剤のせいで尿意がすごいです

トイレから帰ってきたらなんかカウントダウンが始まる

まだ5分前だよ?300秒もカウントするの?

10,9,....

は?英語分からん

3,2,1

あれ、みんな封筒開け始めた

始まったっぽい

 

本番

とりあえずA,Bを読みます

Aは読んですぐ解法が生えたので一応サンプルを手で確認

環境を整え終えたチームメイトに説明する

「じゃあ実装して」と言われたのでモニターの前に座る

AでWAは出せないというプレッシャーからか、手がめちゃくちゃ震えてた

余りの処理とかが微妙に考察しきれてなかったのでペアプロみたいな感じにしてもらった

speedを一生sppedとタイポしていて笑われた

でもペアプロにしたのでWA出しても自分は責められないみたいな気持ちになって多少手の震えが収まりました(クズの発想)

AC!!

まじでよかった。実質俺の仕事終わり。

この時点で既に15分弱経過してます

 

今度はチームメイトからBの解法を聞く

Aより簡単じゃん

問題無さそうなので実装は任せる

B問題もAC

 

Bを実装してくれてる間に他の問題を読んだ

3人の中では英語読むの速い方なのでここでチームに貢献していきたいところ

C問題以降は難易度順ではないのでとりあえず3人で問題概要を把握することに専念する

順位表を見るとHが簡単そうで、チームメイトが解法を思い付いて、確認のため説明してくれる

よく分かってないけど「うんうん、なるほど、合ってそう」とか言って実装に取りかかってもらう

H問題AC

 

I問題のがばがば解法を生やしたのでチームメイトに説明し、必要そうなライブラリを写経する

たまたま昨日のpracticeで写経したのと同じとこだったのでちょっと速くなってたと思う

 

隣ではチームメイトがE問題の誤読でバトってる

なんやかんやあってE問題解けそうみたいなので写経を中断して説明を聞く

これも実はよく分かってないけどめっちゃ頷いておいた(ごめんなさい)

このくらいの時間からは、俺の役割は「相槌を返してくれるぬいぐるみ」のつもりでいた

ちゃんと一発でACしてくれたのでまあ良いでしょう

 

Hの次にたくさん解かれてるGと、細かいところが全然詰まってないものの方針は見えてそうなIをやっていく

 

I問題は用意したライブラリの機能が足りず、上手く実装できないらしくて行き詰まってしまった

これは俺も実装力上げて、ちゃんとライブラリ理解してなにかしら出来るようになりたいね

 

G問題はチームメイトの解法を聞いてなんとなく理解するがお互いあいまいなところが多い

よく分からないまま思い付いたことを言ってチームを混乱させてしまった

(でも何かのヒントになるかもしれないので思い付いたことはなんでもどんどん共有していくのが良いと思います)

結局バグらせ続けてあっという間に5時間終了!

 

最後の30分くらいはC問題考察してましたがさっぱり分かりませんでした

ちなみにまだ分かってません

 

反省点とか

  • 実装をほとんど1人に任せてしまった。データ構造とかライブラリの知識と実装力を上げていかないといけない
  • タイピングが遅い。US配列練習してたけどやっぱりまだ慣れてないな

なにもしてない時間とかは無くて、5時間集中してやりきったのでまあ良かったと思う

国内予選でただただ椅子を暖めていたことを思い出して勝手に自分の成長に感動していた

 

D問題みたい解説を聞いてびっくりしたんだけどただごりごり実装するだけで、こういうのを解けるようになりたいなと思った

チームメイトが「行列使わなくても実装できる」とずっと主張していた

よく知らないけどopenGLとか触ったことある人ならすぐ解けそうと思った

でも解いてるチーム無かったね

 

閉会式

疲れた

英語分からん

順位発表は楽しかった

 

4完最速で20位だった

頑張ったと思います

まだ来年以降もあるのでさらに上を目指していきます

 

懇親会

数独を解いてる人を見かけたので企業ブースを回って探した

数独やってたら急にチーム名呼ばれてびっくりした

全く話聞いてなかったけどなんかワイヤレスイヤホン貰えました

ありがとうございます

 

引き続き数独をやっていく

普通にムズい

スマホアプリみたいに選択したマスと同じ数字入ってるマスをハイライトしてくれ(は?)

 

数独を解いてタピオカをゲットした代わりに食事のタイミングを逃しました

いっぱい余ってたちらし寿司の寿司抜きみたいなやつ美味しかった

 

いっぱい企業ブース回って疲れました

おわり

 

明日は必修の授業を3つ切ってオフィス見学ツアーです

水族館が楽しみだね

 

まとめ

楽しかったけど改善点もたくさん分かった

オンサイトのイベントがあるとモチベ爆上げできるので、来週の台湾大会に向けてまた頑張っていきます

ありがとうございました!!

 

 

 

冗長で中身のない記事になってしまった