QLITRE DIALY

AtCoderをはじめてみた

2022年10月23日

プログラミングについては2019年の6月から始めたので、もう3年間と半年弱は付き合っていることになる。

いわゆるサンデープログラマー、趣味の領域を出ないのだけど、だんだんと伸び悩み、というのを感じてくる時期だ。

そういう現状を突破したい気持ちがあり、paizaのスキルチェックに手を出した。

加えて、このたびAtCoderのコンテストにも初参加をした。今日はそのことについて書きたい。

AtCoderとは

AtCoderは、世界最高峰の競技プログラミングサイトです。

リアルタイムのオンラインコンテストで競い合うことや、

3,000以上の過去問にいつでもチャレンジすることができます。

運営はその名の通りAtCoder社が行っている。

新参なので詳しいことは分からないが、毎週、くらいのペースでコンテストが開催されている。制限時間内に問題を解いて、スコアを競い、自身のレーティングがスコアに応じて増えていく。

初参加してみた

今週、コンテストに初参加をしてみた。

キーエンスプログラミングコンテスト2022(AtCoder Beginner Contest 274)

問題は難易度に応じて8問あり、自分は2問目までは順調に解けたものの、3問目を解いている途中に制限時間が過ぎていた。

終了後、スコアランキングも確認できる。6,819人中、5,238位だったらしい。まぁ初参加なので良く分からないがあまり褒められた順位ではないということは分かる。

散々たる結果だった。ただ、マジで面白いとおもった。以下にその理由をまとめる。

答えが発表される

似たようなサービスでさいきんpaizaのコーディングテストを受けている。

paizaの方は転職におけるスキルマッチングというものを念頭に置いている。

問題は適宜、追加はされるものの、固定的だ。

そのため答えを公表すると不公平感が生まれる。規約上も問題そのものだったり、その答えを公表することを明確に禁止している。

AtCoderのコンセプトはpaizaとは異なっていて、コンテスト形式でスコアを競う、というものだ。

コンテストの問題は毎回、変わる。そのため過去の問題は過去問として答えと共に参照することができるようになっている。

なので、問題をコンテスト中に解けなくても、そこまで悲観することはない。答えをみて次に活かせば良い。このサイクルを繰り返すことで向上につながるという好循環が生み出せるのではないだろうかと思う。

客観的な実力が分かる

世の中のプログラマーが全員参加しているわけではないが、なんとなく立っている位置がわかるというのが面白い。これは仕事をしていたり、趣味でプログラミングをしているだけでは中々気づけない点だ。今回コンテストを受けるまでは、正直、それなりにできるんじゃないかと思っていた。でも全然そんなことはなかった。こういう気づきが面白い。

ショッキング

世の中には自分よりもすごいやつがいるんだな、ということに純粋に気づかされる。

AtCoderではプロフィールに年齢を入力できる。自分より一回り以上も若い人間が、圧倒的な高スコアを叩き出している事実に触れられる。有体にいってショッキング、打ちのめされる部分はある。しかし、こういう経験は普段はあまりできない。それがとても新鮮だと思った。

おわりに

コンテストは毎週開催されているので、短いスパンで検証をできるのも良いところだと思う。

根気強く続けてみたい。ではでは。