久しぶりにAtCoderをやったら、文法は草だったけど考え方は成長していた話

久しぶりに AtCoder をやってみました。
たぶん、半年ぶりくらい

そもそも AtCoder ってなに?って話ですよね。

AtCoder(アットコーダー)は
日本発のプログラミング問題が解けるサイトです。

https://atcoder.jp/home

  • Python
  • C++
  • Java

など、いろんな言語で問題が用意されていて

  • 初心者向け
  • 慣れてきた人向け
  • 競技プログラミング勢向け

までレベル分けされています。

「競技プログラミング」って聞くと
数学が得意じゃないと無理そうに見えるけど
考え方の練習として使うのはかなりアリ。

ぼくもガチ勢ではなく
頭の体操くらいの気持ちで触ってます。

正直に言うと、
Pythonの文法はだいぶ忘れてました。草。

めちゃくちゃ初心者のfor文を書くところで一瞬止まり
同じ処理を繰り返すだけのコードなのに
「これで合ってるんかな…?」って毎回確認。

昔はもう少し勢いで書けてた気がするのに
今は一文字ずつ確かめながら進む感じでした。

ただ、不思議なことに、コードを書くスピードは遅いのに
問題の考え方や整理の仕方は、前より頭に残ってる感覚がありました。

  • 問題文を読む
  • 入力と出力を整理する
  • 処理を日本語で分けて考える
  • それからコードにする

この流れが、前より自然にできてる気がする。

最近は

  • 実務で Windows のバッチファイルをちょこっと見たり
  • GAS(Google Apps Script)で文章を考えたり
  • Linux のコマンドを調べたり

がっつりコーディングはしてなくても
「考え方に触れる時間」はちゃんと積み上がってたみたいです。

今回解いた問題は、

  • for
  • クエリ処理
  • グラフ+組み合わせっぽいやつ

みたいな内容。

数学をゴリゴリ使うというより
条件を整理して順番に処理するタイプ
個人的にはちょっと得意な分野。

「これは無理…」じゃなくて、
「あ、これなら考えられそう」って思えたのがありがたかったです。

さて、順調に(?)コーディングしていた、そのとき。

近所に消防車が到着。

サイレンの音がすごくて
一気に集中力が吹き飛びました。

「え、火事!?」ってなって
愛猫ポンポンと一緒に3階のベランダから様子をうかがう ぼく。

結果的に火事ではなかったみたいで一安心。
でもその間
完全にコーディングどころじゃなかったです。

AtCoderあるある(?)
環境トラブル、現実世界から襲ってくる。

で、話を戻して。

どれだけ考え方が合ってても
最後に必ずやらかすのがケアレスミス

  • Yes って出さなあかんのに
    👉 YES って出して不正解
  • 数字をスペース区切りで出す問題なのに
    👉 カンマ区切りで出力

「考え方は合ってるのに!!」
って、毎回画面に向かって言い訳してます。

これ、AtCoderあるあるやと信じてる。

まとめみたいなひとこと

  • 文法は忘れる
  • でも考え方は残ってた
  • 実務のちょこちょこはちゃんと効いてる
  • そして消防車は突然来る
  • ケアレスミスは永遠

久しぶりにAtCoderを触ってみて
「できなくなったなあ」より
「ちゃんと積み上がってたんやな」って思えたのが
今回いちばんの収穫でした。

また、ぼちぼち触ろうと思います。

すん

本日の猫 ランちゃん

消防車の音、うるさいなぁ…って顔してました

コメント