紙一重の積み重ね

35歳のエンジニアがなれる最高の自分を目指して、学んだことをこつこつ情報発信するブログです。

【人生初挑戦】全国統一プログラミング王決定戦の予選に出場しました #AtCoder

はじめに

先日、人生初の競技プログラミングのコンテストに出場しました。

出場したコンテスト

AtCoderと日経新聞主催の全国統一プログラミング王決定戦の予選に出場しました。

nikkei2019-qual.contest.atcoder.jp

結果

6問中1問だけ解けました。順位は2356位/3000人中でした。

f:id:yokoyantech:20190128203525p:plain

参加しようと思ったきっかけ

最近同僚がAtCoderのコンテストによく出場しており、面白そうだなと思ったからです。また今年で37歳になるにあたり、もっとプログラムが書けるエンジニアでいたいと思ったことも理由の一つです。2019年の目標にもAtCoderのコンテスト出場を掲げています。

www.yokoyan.net

出場した感想

私のレベルはAtCoder ABC の A 問題や B 問題がやっと解けるレベルであるため、場違い感が否めなかったです。本当はAtCoder Beginner Contestでデビューしたかったのですが、タイミング的に出場できるコンテストがこれしかなく、挑戦してみることにしました。たぶん一問も解けないだろうなと思って出場したので、ひとまず一問解けて安心でした。

プログラマとしての実力を示すAtCoderのレーティングは7だそうです。今の現状を素直に受け止めて、努力を重ねようと思います。

atcoder.jp

ただ最初の A 問題に20分近くかかっていたり、2問目の B 問題は 散々考えて書いたRubyのコードが WA になってしまい、不完全燃焼のまま終わってしまいました。

また、B問題については、文字列を配列で考えるところまでは良かったのに、配列間の差分取得でどうにか判定できないかと、あれこれ考えて時間を使ってしまいました。素直にループで回しながら考えたほうが正解に近かったように思います。反省。

atcoder.jp

また、2問目が解けなかった悔しさから、本日復習を行いました。人が書いたコードを読むのは非常に勉強になります。

atcoder.jp

今後の方針

茶色コーダーを目指して、AtCoderの過去問を解きます。

茶色といえど、難しそうです。

AtCoder Programs の過去問のうち、まずは A 問題 B 問題を全て解くようにします。

kenkoooo.com

この二つのレベルの問題が何も考えずに解けるようになることが当面の目標です。また、今回初めてAtCoderのレーティングがついたため、ビギナーズコンテストにも今後も出場してみたいと思います。

下がることを恐れるようなレーティングではないため、どんどん参加してみたいと思います。

家族の協力が不可欠

一歳の息子を寝かしつけてから参加したため、途中で息子が起きるんじゃないかとヒヤヒヤしながらプログラムを書きましたが、意外と息子は熟睡してくれて助かりました。また、突然プロコンに出たいと言い出した夫に、快く協力してくれた妻にも感謝です。

まとめ

ということで、今回ははじめてのコンテストの感想をまとめました。AtCoderの中の人たちが「まずは黙って1000問解け」と仰っていたので、過去問をもくもく解いていきたいと思います!