Memo

Twitterに書くには長すぎることを書きます。Opinions are my own.

AtCoder黄色になりました

今年の目標に掲げていたAtCoder黄色を達成しました。思ったよりも早く目標に到達できて嬉しいけど、まだパフォーマンスの最大値が2404なので、橙色になるのはすごく遠く思える。

やったこと

  • コンテストになるべく出て、解けなかった問題の復習をする
    • 全部解く必要はなくて、本番で解けなかった問題1問か2問でいいと思う
    • unratedもなるべく出る (ARC, AGCに比べて典型多めなので勉強になる)
  • AtCoderの過去問を埋める
    • AtCoder ProblemsやAtCoder Scoresを使っていて、現状だとAtCoder Scoresの500があと少しで埋まる感じ f:id:aajisaka:20190505195851p:plain
    • 企業コンの本選は点数に対して問題が難しめなので後回しにしてもいいかも
  • Codeforcesをやる
    • 社会人には厳しいですが、なるべく出る
    • Highestは2076 (現在1980に落とされた)
  • ライブラリを追加・更新する
  • 解説記事を書く
    • 日頃から様々な解説記事にお世話になっているので、自分も何か情報を出したい
    • しかし、同じことを書いても面白くないかつ劣化版になるので、ググっても解説が見つからない場合や別解が生えたときだけ書くことにする

まだやってないけど、今後やりそうなこと

  • Codeforcesの2000~2300あたりを埋める
    • AtCoder Scoresの800あたりまで埋まったらやる
  • 遅延セグ木のライブラリ化、抽象化
  • Convex Hull Trick、Li Chao Treeのライブラリ化

黄色になる段階では、上記のライブラリがなくても困らない気がする

  • なくて困ったのはWUPCのIくらい?
  • AtCoderのratedコンテストで困った記憶はないので、黄色を目指すレベルだと無理にライブラリ作らなくても大丈夫
    • もちろんないよりはあったほうがいい
  • ただ、今後はABCのrated範囲が広がることで出題内容も変わるはずなので、上記のライブラリが必要になるかもしれないし、やっぱりないかもしれない。

No sub撤退について

  • 最近意識し始めた
  • 黄色付近までいくと1完早解きでレートが上がることはまずないので、2問解いたタイミングで以下の戦略を取る
    1. 手持ちを全部提出しておよそ300位以上(AGCの場合)になるのであれば提出し、そうでなければ提出しない
    2. 提出しない場合、もう1問解けたら1. に戻る
  • 長所
    • B/Cが通せない or 遅解きになってしまったときに撤退できる (例: AGC033)
    • 複数問同時に出して全部ACするのは気持ちいい (例: Tenka1 Programmer Contest 2019) f:id:aajisaka:20190505203551p:plain
      • 複数のジャッジが同時に流れる様子を見るのは壮観
  • 短所
    • 手持ちを全て提出したがそのうちいくつかがACできず、さらにコンテスト終了までACできなかった場合に壊滅する
  • 企業コンで、ACした人の中からランダムで賞金がもらえるような場合は必ずsubmitする
    • リアルマネーはレーティングより重要

異論はありそうだけど、自分は完全にネトゲと思ってやってるのでルールの範囲内で色んな戦略があっていいと思う派。Codeforcesだとそもそもまとめ出しできないし。

おわりに

いろいろ書き忘れがありそうなので修正・追記するかもしれないし、別記事にするかもしれない。