競プロ典型90問をなぞるのをやめた
精進のために競プロ典型90問を順番に解いていたのだけど、思う所があって方針を変えた。
1分野を習得するのに時間がかかる
何故かというと、典型90問は毎回違ったテーマの問題が出題されるので、1つのアルゴリズムを使いこなせるようになるまでに時間がかかる。少なくとも私の場合はそう。数学のベースが欠けていたり、センスの問題もあると思うがそう。
20問ちょっとやってみたが、二分探索や簡単なDFSすら何も見ずには組めない状態がなかなか脱せず、精進方法が合っていないと思った。
RPGで言うと、戦闘の度に戦士やら魔法使いやらのジョブを切り替えてスキルポイント(仮)を分散させてるイメージ。全てをマスターするために必要な戦闘回数は恐らく大差ないのだけど、『戦士をマスターしていないと勝てないボス』に勝つまでに必要な戦闘回数には当然差が出る。
で、本番のコンテストだとこの『○○をマスターしていないと勝てないボス』が大体D〜E問題に配置されているので、それをたまにでいいので片付けていきたい。
ぴったりの記事があった
そんな私にぴったりの記事がQiitaにあった。典型90問の作者のE869120さんの記事。
- 全探索
- bit全探索
- 二分探索
- 深さ優先探索
- 幅優先探索
- 動的計画法
- ダイクストラ法
- ワーシャルフロイド法
などなど、分野別にAtCoderやAOJ、JOIなどの過去問が数題ずつ紹介されている。ちょうど水色目標の人をターゲットにした記事らしいので難易度も丁度いい。
始めて2〜3週間ほど経ったけど、基本的なbit全探索やDFSは0から書けるようになったと思う。引き続き精進を続けるとする。
いま典型90問を改めて見ると応用問題が多くて難しい内容なのがわかる。面白さとかやりごたえの面では素晴らしいので、もう少しレベルアップした時にもう一度お世話になりたい。