はじめに
競プロ(Atcoder)は成長速度が速すぎる人のRatingを見た瞬間
やる気がなくなる傾向にあります。(人による)
そこで2年かけて茶コーダーになった軌跡をご紹介します!
Atcoderをやっている人全てが急成長したわけではないことを見ていただき、
少しでもAtcoderへの参加障壁を取り除ければ良いな〜と思っております!
序章
「やあ!僕はハイ・コーダー。」
「ついこの前、大学の講義でC言語を履修したんだ!すごいでしょ!」
「こう見えても基礎構文ならパッと書けちゃう天才さっ」
「噂で聞いたんだけど、アルゴリズムを学ぶために先輩がAtcoderをやってるらしい。」
「基礎構文書けるようになったんだし、アルゴリズムマスターするかぁ〜」
(ほっほっほ、若者よ、以下の4つを抑えておけば、早々に上達じゃぞ〜)
- 問題に集中できる言語選択をする
- 基礎を身につけるために、短期間でたくさん問題を解く
- 毎週、一度だけ夜に100分捧げる儀式をする。
- 解けなかった問題を解けるようにする。
1章: C言語でAtcoder参戦したら、時間足りなさすぎて飽きた
「昼寝してた、、、なんか夢で変なおじさん出てきたな。」
「まあ今日からAtcoderやるって決めてたし、参加してみるか〜。」
夜の21時(AtcoderBeginnersContestの開始時間)
「よっしゃやるぞ!問題は〜っと。文字列入力か。」
「んんっっっっっ!」
「え、もう制限時間来たの。。。1問も解けてないんだけど。」
〜数回参戦〜
「解けねえ。飽きた。」
(彼はアルゴリズム力を鍛える前にC言語に躓いているようじゃな。)
今振り返った時に感じる煩わしさ(C言語も使い所) ・多次元配列の文字列標準入力でforを書きまくるのがめんどくさすぎる ・その後に1文字入力が来たら、改行エスケープで*つけなきゃいけない ・自分で実装しなければいけない関数の数々 ・短い構文での表現力が低い ・そもそも便利関数の存在を知らない ・etc...
(勿体ないのぉ、問題を解くことに集中できていないようじゃ。)
(【【Python,C++はアルゴリズム実装だけに集中できる】】便利な関数が多く用意されている。)
(それに実装例や人口も多い。共に頑張れる人もおおかろうに、、、)
推移
2章: たまたまPythonに出会い、少し成長
研究室の教授「この1週間Pythonを使ってPaizaやってもらって、レートによって研究決めるぞい」
ハイ・コーダー「うおおおおおおおおおおおおおおおおお、1週間で50問くらい解いてヤッタらぁ!!!」
「Pythonて、思ってることをそのまま実装できる!!」
「今なら想像通りの動きを短時間でプログラミングに実現できるぞ!」
「そうと決まればAtcoderやったるぞ〜」
(コヤツ短期間でPythonやりまくっとるな)
(それに配列操作への嫌悪意識も軽減しとるワ)
(このまま継続して取り組んでいっておくれ、、、)
推移
3章: 継続しないことの無意味さ
「あぁ、今日Atcoderあるけど、まあ来週あるし、いいや」
〜1週間後〜
「あ、いまAtcoder始まっちゃったから、もういいや」
〜1週間後〜
「うっへーーー、このアニメ面白えええええ(忘却の彼方へ)」
〜n週間後〜
「今日気が向いたからAtcoderやろー」
〜レート下がる〜
「上がらんなぁ、もうやめとこかなー」
(...。)
(1週間に1度だけ儀式に100分捧げるだけじゃぞ!)
(それに覚えたての知識なんて、継続しなければ忘れるに決まっておろうに。- -)
推移
4章: 復習と継続を覚える
「就職したぞおお!何か習慣化してやるうううううううううう」
「そういえば中途半端だったAtcoderがあったな!」
(研修: 「振り返り大事!」「継続シ続ケルヤツ成功スル!」)
「そうなんだ!やったるぞー!諦めんぞー!」
「こやつ、解けなかった問題をしっかり自分の手で書けるまで復習しとる」
「しかもコロナが一瞬収まってきた頃に行われた飲み会後にも参加しとるがなっっ!?」
推移
さいごに
本当に以下のポイントを抑えて、取り組めばここまで時間はかからなかったと思います。
- 問題に集中できる言語選択をする
- 基礎を身につけるために、短期間でたくさん問題を解く
- 毎週、一度だけ夜に100分捧げる儀式をする。
- 解けなかった問題を解けるようにする。
なにより、茶コーダーになる過程で2年もかかっている人がここにいますw
周りの成績がどうあれ、自分の成長を感じながら、取り組んでいきましょう!!