はじめに
先日、人生初の競技プログラミングのコンテストに出場しました。
出場したコンテスト
AtCoderと日経新聞主催の全国統一プログラミング王決定戦の予選に出場しました。
nikkei2019-qual.contest.atcoder.jp
結果
6問中1問だけ解けました。順位は2356位/3000人中でした。
参加しようと思ったきっかけ
最近同僚がAtCoderのコンテストによく出場しており、面白そうだなと思ったからです。また今年で37歳になるにあたり、もっとプログラムが書けるエンジニアでいたいと思ったことも理由の一つです。2019年の目標にもAtCoderのコンテスト出場を掲げています。
出場した感想
私のレベルはAtCoder ABC の A 問題や B 問題がやっと解けるレベルであるため、場違い感が否めなかったです。本当はAtCoder Beginner Contestでデビューしたかったのですが、タイミング的に出場できるコンテストがこれしかなく、挑戦してみることにしました。たぶん一問も解けないだろうなと思って出場したので、ひとまず一問解けて安心でした。
プログラマとしての実力を示すAtCoderのレーティングは7だそうです。今の現状を素直に受け止めて、努力を重ねようと思います。
ただ最初の A 問題に20分近くかかっていたり、2問目の B 問題は 散々考えて書いたRubyのコードが WA になってしまい、不完全燃焼のまま終わってしまいました。
また、B問題については、文字列を配列で考えるところまでは良かったのに、配列間の差分取得でどうにか判定できないかと、あれこれ考えて時間を使ってしまいました。素直にループで回しながら考えたほうが正解に近かったように思います。反省。
また、2問目が解けなかった悔しさから、本日復習を行いました。人が書いたコードを読むのは非常に勉強になります。
今後の方針
茶色コーダーを目指して、AtCoderの過去問を解きます。
AtCoderは、プログラミング入門者はまず茶色、初級者は緑、そこそこ出来る人は水色を目指しましょう、というのがオススメで、水色まで行けば十分すごいです。
— chokudai(高橋 直大)🍆🍡 (@chokudai) 2018年1月10日
(多分PaizaのSランクみたいにちょっと箔をつけてあげないとダメなんだろうなって思ってる)
茶色といえど、難しそうです。
AtCoderの茶色は就職においてはあんまり価値がないと思っていたけれども、ABCで半分くらい3完しないと茶色になれないのか。割と厳しい・・・。
— chokudai(高橋 直大)🍆🍡 (@chokudai) 2018年1月31日
AtCoder Programs の過去問のうち、まずは A 問題 B 問題を全て解くようにします。
この二つのレベルの問題が何も考えずに解けるようになることが当面の目標です。また、今回初めてAtCoderのレーティングがついたため、ビギナーズコンテストにも今後も出場してみたいと思います。
下がることを恐れるようなレーティングではないため、どんどん参加してみたいと思います。
家族の協力が不可欠
一歳の息子を寝かしつけてから参加したため、途中で息子が起きるんじゃないかとヒヤヒヤしながらプログラムを書きましたが、意外と息子は熟睡してくれて助かりました。また、突然プロコンに出たいと言い出した夫に、快く協力してくれた妻にも感謝です。
まとめ
ということで、今回ははじめてのコンテストの感想をまとめました。AtCoderの中の人たちが「まずは黙って1000問解け」と仰っていたので、過去問をもくもく解いていきたいと思います!