AtCoder水色に戻るためにしなければならないこと

2019年12月23日

スポンサードリンク

こんにちは。ふぁんたです。

 

 

水色から緑に落ちました!!!!!!!

 

 

色んな人が、緑から水色に上がっていって、そのときにしたこと、学んだこと、考えたこと、心がけたことなどを次々と残していっているので、それらを参考にしつつ、

 

今、逆の立場で自分がどのようなことをしなければならないのかということを考えていこう、そういう記事です今回は。

 

まずしたこと

「水色になるまでにしたこと」みたいなブログを書いている人たちを検索し、内容を参考にしました。

 

水色になるためには、水色になった人の方法を真似するのが一番手っ取り早いですからね。

 

 

…自分も一旦水色になったし、ブログで水色になるまでに心がけたことって書いてたのにね。なんかちょっとさみしいね。

 

水色になったブログを書いた人に共通していたこと

ここです。

今回の記事のメインコンテンツここ。ここです。

 

精進量が多い

 

水色になるために、100~400点問題を沢山解いている人、それを水色になるためにしてきた人が大多数でした。

 

少ない人でも300問程度、多い人になると900問、1000問解いている凄い人もいました。

 

 

なのになんだこのざまは。

 

解かないといけない400点問題も、28 / 146といった埋め具合。

 

 

 

これでは、いけませんね。

 

横のつながりを作る

 

同じぐらいのレベルの人で、Twitterでフォローしあってライバルの状況をいつでも確認できる、というような環境を作り出すのが効果的、という話を書いている人も多く見かけました。

 

あんまり上を見すぎても、60分かけてわからない問題を8分半とかで解かれるのばっかり見ることになるので辛いです。

 

 

AtCoder Problemsに、IDを指定してどの問題を解いたか表示してくれる機能があるので、これを利用して周りと競い合うというようなモチベーションを作り出すのも良いかと思います。

 

アルゴリズムの勉強をし、自分の苦手を知る

 

水色になるために心がけたことでは、勉強したアルゴリズムとして、しゃくとり法、累積和、優先探索、セグ木、UnionFind。

 

また、具体的な話として最短経路アルゴリズム、DPを挙げました。

 

 

足りませんでした。

 

挙げたアルゴリズムに加え、

 

 

基本的なデータ構造

二分探索

動的計画法

素因数分解

約数列挙

エラトステネスの篩

二項係数

最大公約数・最小公倍数

(BITDP)

 

 

以下、名前だけ知ってるけど中身どうなってるかよくわかってないアルゴリズムたちです。

ローリングハッシュ

Zアルゴリズム

マッチング

最大フロー

 

とりあえず、これぐらいは知っておいたほうがいいのかな、と思うようになりました。

 

 

これだけ見渡してみて、精進をしていれば、昔コンテストでつらい思いをしたアルゴリズムがいくつかあると思います。

 

 

ハンバーガーの問題で思いつかなくて、評価が得られなかった再帰処理の問題、

 

上限と下限の区間設定ミスで、延々と比較が終わらなくてTLEした二分探索、

 

「割った処理後の数値の」ルートの値までとして、大きな素数を検出できなかった約数列挙。

 

 

そういう辛い思い出を残すためにも精進は続けたほうがいいですし、その中で自分の苦手をはっきりさせて潰していくというのが大事だと思います。

 

これから目指していくこと

 

・二分探索苦手(バグり散らかす)を潰す。

因幡めぐる式二分探索を覚え、得意分野にする。

 

・思いつきづらい再帰処理の問題に慣れる。

→どうやって?

 

・コンテストがない日でも、400点、500点問題を解く。

 

・見て考え方を理解するだけでなく、書いて、正しいことを判定してもらう。

 

・コミック百合姫を毎月買う

 

・うどんを食う

 

・わからない問題は、解説見てでもACする。ACして終わる。

 

・とりあえずコンテストには出る。冷えると思ってても、出る。

 

 

・解けるときは、解けることを楽しむ。解けないときは、解けるようになることを楽しむ。

 

スポンサードリンク