しゅういちのぶろぐ

活動記です.アウトプットにも使う予定です.ジャンルは多岐にわたる予(ry.

AtCoderで水色になるまでに以下略ポエム

はじめに

先日3/30にあった企業コンでレート1200を超え,水色になりました.

水色になるのに時間がかかった順ではかなり遅い方な気がします. これまで茶色や緑色になった時に記事を書いたと思っていたのですがなかったので,慣例に従いなるまでにやったことポエムを書こうと思います.

灰色になるまでにやったこと

プログラミングを始める

これは難しいと思います.私は大学入学時に「何か自分の役に立つことができる」サークルに入りたいと思い(意識高い系ですね,怖いなぁ),現在所属しているDENX(同志社大学電気情報研究会)に入りました.元々情報系には興味がなく,高校の同級生が情報系に進学すると聞いてもふーんぐらいでした.

denx.jp

現在改装中で草

なので,まずプログラミングを始めるというのはとても難しいと思います.

競技プログラミングの存在を知る

これも非常に難しいと思います.普通に情報系の学科に在籍していてもなかなか知る機会がないと思います.私はサークルの先輩にICPCに誘われてそこで知りました.それまでUnityのチュートリアルで挫折したり,特に何もしていなかった当時2回生の私にとって,パズルのようなこの競技プログラミングはとても魅力に感じてICPC国内予選に参加しました.みんなでお菓子を食べたりして楽しかった記憶があります.

denx.hatenablog.jp

ICPCに出る前に先輩が言ってたAtCoderに出るか〜となって,灰色になりました.やったぜ.

茶色になるまでにやったこと

ちょびっと精進をする

その後1月ぐらいまでコンテストに出るだけ生活をしていて,レートがほとんど上がらない生活をしていました.ちょうどその頃レストランバイトがつらくて辞めて時間ができ,大学生の間で何かしらすごいことやりたいなと思い,競技プログラミングをちょびっとだけ頑張ることにしました.そしたら茶色になれました.

緑色になるまでにやったこと

頑張って精進をする

ネットを彷徨っていたら誰の記事か忘れましたが「Twitterで競プロerをフォローしまくる」というのを見てフォローしまくりました.RUPCが募集されていたので参加しようとして,茶色で行くのはつらいと思い頑張って精進をしたりしていました.確かABCのA問題とB問題を埋めて,プログラミングに慣れようとしていた記憶があります.これが緑色になるのに一番効いた気がします.普段開発していなくて,コーディングできない人はこれおすすめです.この頃に蟻本や螺旋本を買って積ん読するを始めたはずです.

少しアルゴリズムを勉強する

コンテストで知ったもの以外を個人的にちゃんと勉強し始めたのはこのくらいからだった気がします.それまでは全探索とか名前は知っているけどコーディングできない事案が多発していました.サークルの人たちと競プロのことを話していても,自分は実装できず名前を知っているだけで知ったかぶりみたいな感じでつらいときもあった気がします.全探索や累積和みたいな蟻本初級の序の序の口ぐらいをしていた気がします.

そしたら緑色になれました,やったぜ.

水色になるまでにやったこと

諦めずにコンテストに出続ける

これが一番大きい気がします.精進は苦手なので,なかなかレートが上がらずつらい気持ちでしたが,コンテストは出れる限り出ていました.コンテストに出ていなかったらそのまま引退にしていった気もします.

精進する

精進しましょう,精進したら確実にレートのグラフは急激な右肩上がりになります.精進しましょう.

アルゴリズムの勉強をする

ICPCに出るとかもあったので,アルゴリズムを勉強していました.DP勉強したんですが,今でもできないです.

こんな感じでコツコツ頑張るというか辞めずにいたら水色になれました.

ある程度使えるアルゴリズム・データ構造

今現在その場で大体のやり方を思い出せるもの一覧です.数少ないですね....精進します. - 簡単なDFS - 簡単なBFS - bit全探索 - 累積和 - 単純な二分探索をめぐる式のやつコピペして弄る - Union Findをコピペ - 最大公約数 - エラトステネスの篩,素数判定 - 隣接行列,隣接リストでグラフ管理 - ワーシャルフロイド

こんぐらいしかわからないです,ダイクストラとか忘れてしまったやります.

まとめ

  • 継続は力なり
  • 楽しくやろう
  • Twitterで競プロerと仲良くしよう
  • 精進しようね

おわり