AtCoder青になりました。(C++)

いや〜青になれたら競プロの強い人って感じするなぁと思って精進していたらなれました。
嬉しい(小並感)

青になるまでにしたこと
水色までは割となんか気が付いたらなっていたみたいな感じだったのですが、青は努力してなった感がとてもあります。青になるためにかなり精進しました。
もちろん競プロ強くなりたいという漠然とした思いもあったのですが、計算研究会で先輩方と一緒にICPC予選に出るため少しは貢献できるようになりたいという思いがあり頑張れました。
(実際ICPC予選での僕の貢献はC問題について少しだけ考察を投げた程度で終了してしまいましたが……)
とりあえず、精進期間には苦手だったりしてやっていなかった300点・400点をほとんど解き、より高難易度の問題、具体的には500~800点に挑戦していきました。
青色に近づくきっかけは1000点問題をACできたことなんじゃないかと思っています。
やはり、今まで解けなかった難易度帯を1問でも解けると足枷が取れる気がします。
400点までしか解けなかった時代から脱出したのも500点問題を一度ACしたのがきっかけです。
そして、1000点問題を解いてからちょっと後にあったAGC036で900点問題をコンテスト中ACすることが出来て一気にレートが1458→1584に上昇しました。その後2回のABCでレートを停滞させ、3つ後のABC137にてパフォーマンス1924を出して見事青色となりました。
(ただし、E問題を嘘解法で通していたことが発覚して萎えています。)

参考:AtCoder Scoreの画像(二段階滴定かな?)

個人的に思う青になるまでに必要な知識や能力
累積和(1,2次元)
ある程度複雑な動的計画法
二分探索(高速でミス少なくかける)
bit全探索
map
priority_queue
pair
構造体
素因数分解
ユークリッドの互除法
約数列挙
文字列の基本操作
O(logN)での累乗の計算
階乗、コンビネーションの計算
DFS
BFS
Bellman-Ford法
Warshall-Floyd法
Dijkstra
Union-Find木
数学力
ある程度高速かつミスの少ない実装力

これから身につけたいもの
set
グラフ構成系のアルゴリズム
(Kruskal法やPrim法)
かなり複雑でヤバヤバなdp
dpを高速で書ける力
スライド最小値
行列関係
才能


その他
ICPC 2019 Asia Yokohama Regional にチーム名
「unlimited nya-n」として出ます。
皆さんよろしくお願いします。是非エンカしましょう。