はじめに
はじめましてnashi(@taka743)です.
B3の春にAtCoderを始めて約2年,ABC458にて水コーダーになれました!
当初の目標を達成できたので,ひとつの区切りとして色変記事を書いてみようと思います.
自己紹介
・機械系M1
・専門は 材料工学 / 物性物理の解析系
(元々制御志望で研究があまり好きではないため,Twitterで時々苦しんでいる)
始める前に持っていた知識
・C言語likeな組み込みプログラミング
・授業でPython / Fortran
・C++は未経験
始めた経緯
・マイコンで自動補完が効かないことが多々あり,C言語をそらで書きたいと思った
・サークルの先輩が水色コーダーだったので,自然と水色を目指すようになった
使用環境
・C++23
・WSL
・VS Code
ABCの現環境(2026/5)と各色のレベル感
ABCの各問題の印象と,各色コーダーがどこまで解けるかの偏見です.
最近の傾向としてDあたりに少しアドホック(言いたいだけ)な問題が出て,E,Fは結構典型当てはめるだけみたいなのが増えてきている気がします.
A:全探索
B:全探索を工夫する問題
---茶色はここまで解ける
C:計算量を意識し始める.二分探索,尺取り,set,map,幅優先探索,累積和
D:式変形などを工夫した問題.dp,木グラフ系アルゴリズム,幾何問題,整数問題
---緑色(Dが時々いける)
E:高度なデータ構造が出され始める.セグ木系,unionfind系,確率,数え上げ
---水色(Eが時々いける)
F:高度典型or考察がむずい.主客転倒,ゲーム系
---青色
G:考察が難しすぎる.たまに高度典型がでる.畳み込みならわんちゃん.
↓↓↓
---黄色/橙/赤:ABC殿堂入り.ARC/AGCで勝てるようになる
水色時点での精進量
Achievement
たしか800ACくらいで50%の人は入水するらしいので少し遅めの入水かなという印象です.
入緑したときに1000日streakするといったのに,maxStreak=16ですね..何かがおかしい
Pie chart
水色までの各色をまんべんなくやっています.
一部青や黄色は高度典型の学習でACしたものが多かったと思います.
各色になるまでにやったこと
各色での習得したアルゴリズムとやったことを以下に示します.
灰色-茶色(0-400)約2か月
感想:
C++に慣れるころには入茶できていた印象です.APG4bが本当に役に立ちました.
習得したアルゴリズム
・全探索
・二分探索
・幅優先探索/深さ優先探索
やったこと
・APG4b
・蟻本
茶色-緑色(400-800)約半年
感想:
実装速度やアルゴリズムの理解度が求められ始めます.ここら辺から負け始めました.
習得したアルゴリズム
・bit全探索/順列全探索
・set/map/queue/stack/priorityqueueなどのデータ構造
・1次元dp/ナップサック
・ワーシャルフロイド/クラスカル法
・GCD,LCM
やったこと
・ACL導入
・自作テンプレ用意
・精選100選
緑色-水色(800-1200)約1年半
感想:
「緑色からの勢い+モチベ増加」で最初の方は行けていたのですが,後半B4に上がってから実生活がうまくいっておらず1年近く停滞していました.
前半にやった典型90がかなり効果的で,これを全て終わらせてからの数週間は勝ち続きで非常に気持ちよかったのを覚えています.
習得したアルゴリズム
・半分全列挙/黄金探索/組み合わせ列挙/ダブリング
・セグ木/遅延セグ木/multiset/unionfind
・LCS/LIS/区間dp/期待値dp/確率dp/bitdp/桁dp/木dp
・ダイクストラ法/オイラーツアー/SCC/トポロジカルソート/最大flow
・素因数分解/約数列挙/高速素数判定/エラトステネス/逆元
やったこと
緑前半
・提出環境の整備(自作shでテンプレ用意,ビルド,デバッグ,テストができるように)
・自作テンプレの改良
・データ構造の自作(あんま意味なかった)
・典型90を解く(90問目のFPSが理解できず,現在も放置している)
緑後半
・まよばちゃ
・毎週の参加
水色-(1200-)これから
習得したいアルゴリズム
・FPS
・ハッシュ
・行列累乗
・乱択系
・中国余剰定理をちゃんと使えるように
他おすすめを教えてください
競技プログラミングを始めて変わったこと
・C++をそらでかけるようになった
・生涯の趣味が一つできた
・プログラミングに対する苦手意識が減った
・コーディングが早いといわれることが増えた
・Twitter中毒になった(最悪)
今後の展望
AtCoderを始めて以来,目標にしていた水色になることができました...
今後は
・大学院を出るまでに青色になり,
・20代のうちに黄色になり,
・人生が終わるまでにABCを全完
したいと思っています.
さいごに,
研究室の多忙や地頭限界,将来に対する不安など前途多難ではありますが,
競技プログラミングとは末永くお付き合いしていきたいと思っております.
最後まで読んでいただきありがとうございました.


