feature image

2022年12月21日 | ブログ記事

【ぼっち・ざ】3週間競プロをした話【きょうぷろ!】

この記事はアドベントカレンダー2022の27日目の記事です。

22Bのかにばくです。はじめまして。

突然ですが

みなさん、プログラミングしてますか?

「大学に入ったからには競技プログラミングなんかにも手ェ出しちゃおかな^^」と意気込むも、hello world!などと世界に挨拶したまま音信不通になったりしていませんか?

図書館で借りたアルゴリズムの本は呪文だらけで目が回り、気付けば机に突っ伏したり……していませんか?

なにかを始めるとき、困難は付きものです。そこで今回はプログラミング初心者である私が3週間競技プログラミングを続け、感じたことをありのままみなさんにお伝えします。
Let's challenge...

※競技プログラミングとは?という方はこちらの記事をご覧ください。

開始!

まずは国内最大手の競技プログラミングコンテストサイト「AtCoder」にアカウント登録します。----------2022-12-01-233137
しました。

次に何をやるべきか迷うところですが、とりあえず同サイト内にあるAtCoder Programming Guide for beginners (APG4b)をやっていきます。初心者向けにプログラミングの基礎を一通り網羅してくれている問題集のようです。

12/1~

まずはApG4bを淡々と読み進めます。1節ごとにトピックが決まっていて、分かりやすい解説と簡単な練習問題がついています。

こんな感じ

これの1章と2章を読むと、基本的なプログラムが書けるようになるそうです。
(各節についている演習問題はすべて解くのが望ましいですが、モチベと相談するのも大切で、私はすべて解いていたら飽きそうだったので気になるものだけ選んで解いていました)

コンテスト!だ!

突然のコンテストで恐縮ですが、AtCoderというサイトでは週に1度、土曜の夜9時からAtCoder Beginner Contest(通称ABC)という大会が開催されています。

コンテストでは難易度の異なるいくつかの問題が出され、参加者は制限時間の中でそれらの問題へ立ち向かいます。このコンテストに参加することで自分の実力が全体のどのあたりに位置するのかを把握することができ、おそらく多くの人のモチベーションとなっています。

やるぞ!

----------2022-12-21-211656
やりました。

傾向として初めの2,3問は基礎的な知識を問うものが多く、なんとなく見覚えがあればGoogle検索(コンテスト中でも検索はOK!)をして解くことができます。ApG4bの1,2章を読んでおいた甲斐がありました。やったね!

ところが、

4問目からはさっぱりわからず、高い壁を感じました。

おそらく初心者が競技プログラミングで挫折を経験するとしたらまずここでしょう。
「基礎的な知識は1通り身についているから、2,3問目までは解けるけど……」といった人は少なくないはず。

次の舞台へ

正直なところ、自分にはプログラムは向いていないのではないか?と思い詰め、ディスプレイごと部屋の窓から投げ捨ててしまいたくなるが、そうは問屋が卸さない。踏ん張りましょう。

弊サークルの過去記事にある競プロのめっちゃ初歩的思考法や、競プロ初心者が中級者にレベルアップするための小技集【AdC2019 47日目】などは非常に有用で、ちょうどこのレベルの人々にぴったりです。

他にもレッドコーダーが教える、競プロ・AtCoder上達のガイドライン【中級編:目指せ水色コーダー!】といった、先駆者による記事を参考にしつつ、学習を続けます。

やったこと

以下雑にまとめます。

こんなことをやっているうちに、あっという間に2週間が経ってしまいました。

そして迎える3週目のコンテスト。気になる結果は……?

そう簡単に結果は出ない……
問題のバリエーションは沢山あり、自分が勉強したところが必ずしも出題される訳ではないので、実力を反映させるには何度もコンテストに参加する必要があります。

しかし

確かな成長は感じました。4問目の壁は以前よりも低く見え、もうひと踏ん張りで解けそうなところまで来ています。そして何より

楽しい!

競プロが楽しくなってきました。3週間前と比べてもモチベーションは段違いです。継続することで確実に一歩ずつ前進していると実感できるし、週に1回のコンテストによるフィードバックも得られます。大学に入って使わなくなった高校数学の知識なども出てくるため、脳に良い影響が現れている気がします(個人の感想です)

みなさんも是非、競技プログラミングを始めて、「継続」してみてはいかがでしょうか。

「継続」……といえば

友達のいない中学生、後藤ひとり。彼女は毎日コツコツギターを練習した結果、高校入学時には「ギターヒーロー」としてネットで名を馳せるほどになるが、現実では変わらず陰キャでぼっちでコミュ症で、どうしようもない日々をすごしていた。そんなある日、突然彼女の前にギタリストを探しているという女子高生、伊地知虹夏が現れる。金欠系ベーシスト山田リョウ、陰キャの天敵キラキラJKの喜多郁代など愉快なメンバーとともに「結束バンド」として活動する彼女の人間的成長を描くまんがタイムきららMAXで連載中の大人気漫画「ぼっち・ざ・ろっく!」が現在アニメ放送中!是非ご覧ください!

ぼっち・ざ・ろっく! (1) (まんがタイムKRコミックス)

Amazonで購入する

明日の担当は@toruthiさんと@iroriさんです。お楽しみに!

kanibaku8 icon
この記事を書いた人
kanibaku8

モチなどをこねてます

この記事をシェア

このエントリーをはてなブックマークに追加
共有

関連する記事

2023年7月13日
アルゴリズム班はやとき王選手権「競(けい)プロ」を開催しました!
abap34 icon abap34
2021年4月18日
ベズー係数とN項の拡張ユークリッドの互除法
0214sh7 icon 0214sh7
2023年4月29日
CPCTF2023 PPC作問陣 Writeup
noya2 icon noya2
2023年4月21日
CPCTFを開催します
noc7t icon noc7t
2022年11月27日
Chromebook&VSCode Server(プレビューアクセスなし)で開発環境を作る
oribe icon oribe
2022年8月30日
【競プロer向け】母関数を習得しよう!
tatyam icon tatyam
記事一覧 タグ一覧 Google アナリティクスについて 特定商取引法に基づく表記