【体験談】helloworld すら何回も落とした初学者が、1年で AtCoder 緑になるまでの話(とこれから)
本記事は自分の漠然とした考えをgptを用いてまとめた記事です
何回も読みながら幻覚がないことは確認しました!
要約(30秒版)
・オンラインジャッジ 373日ストリークで“毎日手を動かす”を習慣化
・AtCoder 851まで到達、研究&インターンの実装力にも効いた
・しかし、学習のための毎日勉強が連続履歴維持のための“慣れた問題消化”へと変質してしまった
・そこで、毎日の問題解きから毎週新しい問題2つの深掘りへ切り替える
はじめに
最初は helloworld も通らないタイプの初学者だった。
標準入力で詰まり、REで泣き、WAの理由も分からない。
そんな僕でも、1年で AtCoder 緑に届いた。やったこと自体は地味で単純、でも量を継続→質に変えるまで続けたのが勝因だったと思う。
1年前はこんな感じでした
- 入出力のやり方もわからない
- VS Code の存在も知らず、Colab で AtCoder 風の問題を解き続けていた
ちょうど一年前(2024/10)のコード
#bit演算?!
a,b=map(int,input().split())
if a>>b:
print(">")
elif a<<b:
print("<")
else:
print("=")
# なにをしたかったんだろう、、、
a, b = map(int, input().split())
while True:
if b/a == 0:
print("factor")
elif a/b == 0:
print("multiple")
else:
print("neither")
今見ると笑えるけど、当時はガチで分からなかった。
何をやったか(ざっくり)
-
Baekjoon 373日連続:とにかく毎日1問以上。脳に「毎日やるのが普通」と教え込む
-
AtCoder:週末のコンテストは積極参加、復習ノートは翌日に必ず1枚
-
ノートの型を固定
- 制約 → 計算量の目安
- できるだけ自力で解く。TLEなら限界まで最適化して、それでも厳しければ友達に相談
- 新しいアルゴリズム/データ構造は、1週間はその類型だけを解いて慣れる
効いた習慣ベスト5 💡
- 「解説は最後」ルール:自分の仮説を書き切ってから読む
- バグに“名前”を付ける:off-by-one、未初期化、浮動小数…再発防止がしやすい
- 自作テストケース:エッジケースを意識して用意する
- 解いた問題を振り返り、ブログ発信(〜2025/6):解法の“骨”を言語化しやすい
- コードをつなぐ:1問完結で終わらせず、小さなライブラリ化を進める
黒歴史(でも肥やし)
-
while True:で無限ループ → REで気づく -
sys.stdin.readlineが分からず時間を溶かす -
sys.setrecursionlimitを忘れて木DPで落下 - Python の
listをキューにして TLE(dequeを使おう…)
成果(うれしかったやつ)
- AtCoder 851 到達(緑)
- 研究室では異分野スタートでも早期に戦力化
- 国際学会で発表
- 複数インターン参加 → 個人コードから協調開発へ
でも課題:ストリークが目的化してた
毎日ACは尊いけど、24時間の締切が「1問を掘り切る時間」を削る。
“解けそうな問題”だけを選びがちになり、学びの密度が下がるのを自覚。
今後:毎週2問を“深掘り”に切り替える
-
難易度は AtCoder E帯以上
-
深掘りの最低ライン
- 解法2通り以上・計算量の根拠を書く
- 境界ケース・反例のリスト化
- 解法をブログに発信
- 類題3問 → 慣れるまで集中的に取り組む
-
余った時間は個人プロジェクトへ(機械学習・強化学習のプロトタイプ等)
メモ用テンプレ(コピペOK)
# 問題名 / 目的(1行)
- 制約: N≈?, M≈? → 目標計算量: 例 O(N log N)
# 解法A(素直案)
- アイデア:
- ボトルネック:
- 実装の落とし穴:
# 解法B(別アプローチ)
- 使うテクニック:
- Aとのトレードオフ:
# 境界/反例
- 例: N=1, all same, 極端値, ランダム
# 失敗ログ
- 現象:
- 原因:
- 再発防止:
# 類題と差分
- 問題X: 差分=辺重み有/無, 多始点 など
# 学び(1〜3行)
使った学習リソース(軽く)
- コンテスト復習記事/公式解説
- 初学者向けアルゴリズム本(グラフ/DP/数論の基礎)
- 先輩の実装テンプレを読み込む(手を動かして真似 → 自分流に整理)
おわりに
毎日の小さな約束は、手を動かすようになる最短の魔法。
でも、どこかで量→質に切り替える時期が来る。
僕は 週2深掘り+個人PJ で、次は 水色 を狙いにいきます。
同じ道を歩く初学者の方へ:今日の1問も、明日の1深掘りも、どちらも正しいが維持することが大事!頑張りましょう!!!!



