めんどくさがり屋な私がAtCoderを1年間続けてみた

よくサボります。愚痴多めです。楽をしたいです。

AtCoder 47日目 方法論の確立 と落ち込み

今日行ったこと

・ABC138 D-Ki →〇

f:id:shinchan03:20210513192634p:plain

初のD問題の正解!

といっても、典型的な幅探索問題だったため、幅探索テンプレをちょこちょこ直したら通った感じです。

 

今回のこれで、一つはっきり分かりました。

 

「0から思いつくの無理だろ!!!!(怒)」

 

グラフの理論とか幅探索の実装を知ってて、「あ、これ幅探索でいけるかも。実装方法〇〇本のどっかに書いてあったよな~」って解き方じゃないと無理すぎる。

問題を見て、そこで初めてグラフの実装や幅探索の実装を自力で編み出してやるやつなんてほとんどいないはず。

 

競技プログラミングって名前が良くないのかもしれない。プログラミングができれば、AtCoderができるかっていうとそうでもない。

実際のところ、プログラミングの知識よりも数学的な知識が重要だもん。プログラミングの部分なんて入力と出力、基本構造くらいの知識でいけるもん。

 

そして、なんだかんだ、AtCoder中級者までの上達法が分かりました。

 

上達法

アルゴリズムとデータ構造(けんちょん本)

↓↑

精選100問 or 過去問

 

これの繰り返しに尽きる。今後これを継続できれば上達は堅い。まあ、継続が難しいんだろうけど。。

Qiita記事にも、水色までは「アルゴリズムの理解度×取り組んだ過去問の数」って書いてあったけど、今になってやっと意味が分かった。

方法が確立されたら、あとは実践するだけだ。。。

 

そういえば、youtubeで「AtCoder」で検索してみたら、結構落ち込んだ。

理由1

みんなめちゃめちゃ成長早くて、半年で水色になったとか、初コンテストでC問題解けたりとか、、すげえな。。。俺才能ないのかも・・・って強く思ったわ。(仕事としてプログラミング教えてるにも関わらず、47日取り組んでC問題解けないこと多い)

 

理由2

競技プログラミング中毒。や、競プロ沼って言われるほど、はまる人ははまるらしい。

「いや・・・?俺解けなさ過ぎて辛いんだが・・・?」って思っちゃった。確かに解けたら嬉しいよ?でもやっぱり解けないことの方が多くて。

 

でも、それでも、毎日コードを書くということが続いてるのはAtCoderのおかげだ。

ちょっとでもコード書かないとすぐ忘れる&自信なくす私としては、AtCoderはすごく役に立っているはず。ありがたい。