はじめに
タイトルの通りなのでポエムを書こうと思います。大分イキった文章に仕上がりましたので苦手な人は見ないようにしてください。
もし自分と同じような競技プログラマーの方が居れば、参考になるかもしれないしならないかもしれない。
やったこと
昨年8月頃に競プロを始めてから現在に至るまで、9割近い時間をデータ構造の勉強に使ってきたと思います。
具体的な流れとしては
1. 面白そうなデータ構造を探してブログや論文を読む
2. 理解したら実装をする
3. 簡潔にまとめてverifyする
みたいなのをずっとやっていました。
何故こんなことをしていたかというと、まずデータ構造が好きだったのはそうなのですが継続的に問題を解くのが苦手だったからです。好きなこと以外をするのが絶望的に下手なのでAC数を増やすのは大分怠っています。(現在の総AC数は292)
できるようになったこと
データ構造は比較的得意分野になりました。(それはそう) しかしAtcoderではデータ構造がほとんど出題されないので、これは大した強みにはならなかった気がします。
他には構築が少し得意になりました。構築問題の大半はデータの持ち方なので、データ構造に通じる部分があるとすればそこだろうか等と思っています。rated/unratedどちらの最高順位も後半の構築を通して達成しました。構築は地頭の印象がありましたが、実際はセオリー通りの方針の積み重ねで解ける問題が多いと思います。
できないこと
数え上げやDPにはまだまだ手が出ない状態で、他にも順列や辞書順などは苦手だと感じます。データ構造脳だと1つの数列をいじるのはやりやすいのですが、N!の順列で条件を満たすもの~みたいなのはイメージしにくいのでやりにくいです。虚無実装も手が止まりがちでした。(綺麗に書けないと動き出しが遅くなる)
おわりに
この記事役に立たなそう...