本單元優化手法速查表
| 看到什麼訊號 | 想到什麼手法 | 形狀變化 | 本單元例子 |
|---|---|---|---|
| 規律的總和、配對、分組 | 數學公式一步到位 | O(n) \to O(1) | 等差級數、飲料分箱 |
| 反覆問「x 出現過沒/出現幾次」 | 標記陣列:索引當數字 | 每問 O(n) \to O(1) | mex 函數 |
| 找因數、判質數 | 因數成對,試到 \sqrt{n} | O(n) \to O(\sqrt{n}) | 質數判斷 |
| 模擬過程大量刪除 | 別逐一 erase,整輪重建 |
O(n^2) \to O(n) | 約瑟夫問題 |
| 每一步把問題砍半 | 這就是 \log:連 10^{18} 也只要 60 次 | O(n) \to O(\log n) | Odd Divisor |
| 多重迴圈枚舉爆量 | 改變枚舉順序,最後一層用數學算 | O(K^3) \to O(K \log K) | A*B*C |