AtCoderで競技プログラミングをはじめました

スポンサーリンク

f:id:tkhstol-929:20190831153745p:plain

atcoder

 

どうも、サーロインです。

 

タイトルの通り、AtCoderで競技プログラミング(競プロ)をはじめました。

 

競プロとはざっくりいうと、プログラミングの問題が5問くらい出題されて、それらをいかに早く正答できるかを競うものです。

 

私の始めたAtCoderでは、毎週土日の21時からオンライン上でプログラミングコンテストが開催されていて、コンテストの成績に応じてレーティングがつきます。

 

なぜ競プロ始めたのかは主に以下の理由からです。

 

理由

データ構造・アルゴリズムの基礎知識を身に着けたい

競プロ、とりわけAtCoderではデータ構造・アルゴリズムの知識を多く問われます。

 

 

二分探索、木構造、双方向連結リスト、DP、ナップサック問題、などなど。。。

 

 

大学の頃に習った気がするものばかりですが、いかんせん授業中寝ていたタイプの学生でしたので、この辺の知識が全くありません。

 

 

社会人になって仕事としてコードを書くようになって、この辺の知識が全く無いのはマズイなあと最近思い始めまして、

 

 

でもただ勉強するだけだと絶対飽きてしまうので、競プロと絡めることで楽しく学べるのではないか?と思ったのです。

 

客観的な実力を知りたい

先述の通り、AtCoderではレーティングシステムがあり、自分の実力をレートから把握することができます。

 

 

つまり、AtCoderのアクティブユーザーの中で自分の客観的実力を知ることができるんですよね。

 

 

競プロを始めた表向きの理由が先程の「データ構造・アルゴリズムを勉強したい」とするならば、本音はこっちです。

 

 

自分のコーディングスキルというか、技術力というか、そういった力がIT業界の一般的な観点から見てどの位置なのかを知りたかったので、競プロを始めたといっても過言ではないです。

 

会社で一番デキル社員になったとしても、世間的に見たら全然大したことない、なんてこともありますしね。

 

客観的な実力を測りたかったのです。

 

 

まあでも、AtCoderの社長であるchokudaiさんも仰るように、「AtCoderのレーティング=プログラマーとしての実力」ではありませんけどね。

 

AtCoderは、プログラミングのコンテストを開催している企業です。「もの作りのアイデアを競う」だとか、「製品を作る」という部分から少し乖離した、「複雑な処理を正しく記述する」だったり、「計算時間のかかる処理を、数学的/情報科学的にスマートに処理する」だったりを競うコンテストになります。

 

このようなコンテストであるため、エンジニアに必要な、全ての能力が測定できるわけではありません。

chokudai.hatenablog.com

 

 

にほんブログ村 IT技術ブログへ
にほんブログ村