本單元重點回顧
OJ 的核心原理:系統用隱藏測資檢查你的程式,只要有一筆測資答錯,就不是 AC。
- 推論:讀題讀仔細很重要,因為題目的每個細節都可能是隱藏測資會考的邊界情況。
題目的 8 個組成部分:名稱、描述、輸入格式、範圍限制、輸出格式、範例、時間 / 記憶體限制、給分方式。
- 不是所有題都有全部 8 個,但重要的 5 個(輸入、輸出、範圍、範例、限制)一定要找到。
6 大判定結果詳解:
- AC:通過
- WA:答案錯,邏輯或讀題有誤
- RE:執行時崩潰(除以零、陣列越界等)
- CE:編譯不過(語法錯誤、缺 #include 等)
- TLE:演算法太慢
- MLE:用記憶體太多
各大 OJ 的選擇:
- AtCoder:初學者友善,難度清楚
- Codeforces:題目新、競賽多、難度高
- CSES:經典題庫,適合系統學習
- NCOJ / TIOJ:本地 OJ,適合參考 APCS 和高中賽的題目
讀題 SOP:快速掃描 → 找輸入格式 → 找輸出格式 → 驗證範例 → 考慮邊界 → 設計算法 → 寫程式 / 測試 → 提交
- 最常犯的錯誤:輸入格式理解錯、輸出格式漏細節、沒考慮邊界。