以前の出来事(競プロなど)

高校~大学 2 回前期までの出来事(競プロなど)

中学 3 年

春頃、不登校になった。それにより、もともと真面目に行ってなかったバスケットボールのクラブをやめることとなった。

その後、友達から、ゲームが作れるクラブ、数学研究部があると聞き、当時ゲーム(wot blitz) にはまっていたので、クラブに入ることとなった。

 

最初は HSP を教えられ、ゲームを作ってみることとなった。しかし、自分はあまりゲームをした経験がなく、作りたいゲームの案が思い浮かばず、因数分解などをする、数学的なコードしか書くことができなかった。これを見かねた顧問が、JOI(情報オリンピック)を勧めてきた。

JOI 本選まであと 2 か月 + 今まで JOI 本選に行った生徒はおらず、顧問に「JOI 本選には行けないだろうけど、予選 B ランクを頑張って目指そう」といわれた。当時自分は自分にかなりの自信があったので、この言葉にカチンときて、絶対に JOI 本選に行ってやると心の中で誓った。

当時、競プロという言葉すら知らないので、練習は JOI 過去問のみであった。顧問から、DP、BFS、DFS のやり方を聞き、予選問 1~4 までは埋め、5 も最近のものは埋めていた。

 

予選で A ランクは取ることができなかったが、指定校推薦で本選に行くことができた。本選の次(代表合宿)には全く手が及ばなかったが、競プロ、atcoder、PCK、スパコンコンテスト、あり本など、競プロをするのに必要な情報一式を手に入れることができた。

余談ではあるが、指定校推薦をたたく気持ちはわかる一方、上記のように指定校推薦がなかったら JOI は知ってるものの競プロを知らず、練習量の差から本選に行けず、ずっと成長できないクラブ、学校が存在すると思っている。

 

高校 1 年

 夏、先輩と同輩と自分の 3 人のチームで、スパコンコンテストに出た。当時、コンテストは C 言語しか提出できず、自分は C++ しか使えなかった。よって、map や queue など、内部のアルゴリズムを調べて C で実装した。予選通過はできたものの、本選が学校のセミナー期間と被っていた。

自分はもちろん本選に行くが、ほかのチームメイトはセミナーを休むことはできず、先輩は最後 3 日間、同輩には最初の 1 日来てもらって、チームの条件を満たすようにした。これは、主催の人たちの意図をガン無視しているので非常によくないと思い、今後のスパコンコンテストには出なかった。

スパコンコンテストは阪大で行われ、自宅からはそこそこの距離があり、さらに 4 日間同じ問題を考え続けるので、ものすごく大変だった。しかし、後々振り返るととても楽しかったうえ、いい経験ができたと思っている。セミナーを休んでくれる部員がいたら次年度も出たかったが、現実はそう甘くない。

 

秋、PCK に同輩と自分の 2 人で、チーム名「Moririn」で参加した。地域枠で本選に参加することができた。本選は友達と泊りがけだったので、とても楽しかった。本選の後、色々話過ぎて夜更かしをし、解説の会場までのバスで携帯をなくした。予選は 27 位、本選は 11 位だった。

 

冬、JOI 予選 A ランクで通過、本選は 600 点満点中、部分点の 5 点を取ることができず(その問題は最後の問題だったので、見ていなかった)、春合宿に行くことができなかった。これほど悔しいことはなかった。これによって、詰まったときにほかの問題もみるようになった。

数学オリンピックも受けたが、1 点足らず予選落ちした。

 

高校 2 年

夏、数学甲子園に参加したが、数学ができる人を集めることができず、予選通過できなかった。このために自治医科や防衛医、甲子園の過去問などを解いていたので、かなり悔しかった。

 

JOI の夏合宿にも参加した。そこで Haskell を学び、遅延評価を学習した。当時かなり難しく、進みは遅かったが、チューターのおかげで夏合宿後には遅延評価のやり方を理解できていた。発表はスプレー木についての解説をした。

 

秋、PCK に同輩と自分の 2 人で、チーム名「それはちがうよね」で参加した。これは、ある先生が言った言葉であった。今回こそは 10 位以内に入りたかったが、かなわず、地域枠で本選に参加することができた。本選は、ある問題を嘘解法で通してしまった(解説中に自分の解法を落とすケースが作れてしまった)。本選の結果は 5 位であった。表彰されるときにチーム名を言われるのだが、その時笑いをこらえるのに必死だった。

 

冬、JOI である。予選 A ランクで通過。本選は去年ギリギリ落ちたので絶対に通過してやると思っていた。しかし、前日泊まった部屋(JOI で用意された部屋)、が全室禁煙であるのに部屋の中がものすごくヤニ臭かった。管理人に行って普通の消臭剤で何とかごまかしていたが、深夜になってごまかしがきかず、寝れなくなってしまった。この時間は管理人がおらず、また、玄関はかぎが閉められており外に出ることができなかった。これによって寝ることができたのは、玄関が開いて、コンビニでヤニ用消臭剤を買い、使った後の 20 分ほどであった。基本的に徹夜をしない人なので、コンディションは最低であった。

しかし、本選通過したいという執念が勝ったのか、部分点を取りまくったことで何とか春合宿(日本代表候補合宿)に参加することができた。

春合宿は 5 時間コンテスト × 4 日間であり、とても大変だった。上位との差を一番肌で感じた瞬間であった。結果は 13 位であった。

 

数学オリンピックは、予選通過したものの、JOI の本選とこの本選の日程が被ってしまい、本選に出ることができなかった。

 

高校 3 年

春、受験対策において、英語、国語に重点を置いていたので、物理化学の勉強がずっと後回しになっていた。さすがにやらないといけない一方、近い目標がないとやれない性格であったので、物理チャレンジ、化学グランプリを受けることにし、予選までに受験対策を完璧にすることにした。実際、することができ、おまけに予選通過した。一応受けるからには過去問もいくらか解いていたが、予想外であった。

 

夏、物理チャレンジ、化学グランプリの本選に出た。過去問を解いていた上、詰まったときに後ろの問題も見ることができたので、筆記はかなりできた。しかし、実験は授業でしかやったことがなく、それも中学で少しやった程度であり、化学では蒸留水でうまく洗えなかったり、瓶をこかしたり、物理ではアルミの棒と鉄の棒を間違えたことで棒を曲げてしまったり、巻き尺を壊したりしてしまった。ただ、解く順番がよかったので、ある程度点数を取ることができ、物理チャレンジ、化学グランプリともに金賞を得た。

 

京大工学部情報学科を目指していた。志望学科内で、第一回京大実践は 6 位、第二回京大実践、京大オープンは 2 位を取っていた(第一回京大オープンは物理、化学オリンピックと被っていて受けていない)。A 判定でも落ちるということを無限回聞いていたので、いい成績を取ると嬉しい一方自分が知らないうちに慢心して本番落ちてしまうのではないかという不安を増大させた。

京大実践の医学部は B 判定、東大実践の理3 は C 判定であったので、医学部行くやつはすごいなと思っていた。

いろいろなオリンピックでいい成績を取っていたので、特色入試も受けた。ワンチャン受かればいいなと思っていたら、これで受かった。

 

その後、全国統一プログラミングコンテスト王決定戦を予選通過し、本選のオンサイトで京大の競プロer と会うことができた。本選 83 位

大学 1 回

様々な本選に参加した。

夏、Google code jam 2019、Round 2 で 2443 位、敗退

秋、第一回日本最強プログラマー学生選手権、予選通過し、決勝で 32 位

冬、全国統一プログラミングコンテスト王決定戦、予選通過し、本選で 52 位

 

大学 2 回前期

春、NOMURA プログラミングコンテスト 2020 で、全体順位 27 位、学生順位 10 位となり、賞金 1 万円を獲得

夏、Google code jam 2020、Round 3 で 272 位、敗退

Facebook Hacker Cup、Round 2 で 535 位、敗退

2020 Topcoder Open Algorithm Competition (TCO20) Round 3B 32 位でアジア大会(Round 4) に出場、68 位で敗退

大学 2 回後期 

秋、PGBattle に チーム名「焼肉食べ放題」( heno さん、yamunaku さん、僕)で参加、大学生のチーム内で 4 位となり、賞金得れず

 

大学 3 回前期

 

Google Hash Code、チーム名「KUPC」( suibaka さん、yamunaku さん、nxteru さん、僕) World Final 出場、24 位