實戰題庫
題庫說明
本題庫收錄 APCS 歷屆試題以及推薦練習題,按主題與難度分類,幫助你有系統地提升解題能力。
📊 題庫總覽
按級分分類
| 級分 | 題目數量 | 建議練習時間 |
|---|---|---|
| 1-2 級分 | 30+ 題 | 4-6 週 |
| 3 級分 | 25+ 題 | 4-5 週 |
| 4 級分 | 20+ 題 | 4-6 週 |
| 5 級分 | 15+ 題 | 6-8 週 |
按主題分類
- 基礎語法與 I/O (10 題)
- 條件判斷與迴圈 (12 題)
- 陣列與字串 (15 題)
- 函式與遞迴 (10 題)
- 堆疊與佇列 (8 題)
- 排序與搜尋 (12 題)
- 圖論 (10 題)
- 動態規劃 (8 題)
- 貪心與分治 (6 題)
🏗️ 模組一:基礎題(1-2 級分)
A1: 輸入輸出與基本運算
A2: 條件判斷與迴圈
A3: 一維陣列
🏢 模組二:進階題(3 級分)
B1: 字串操作
B2: 二維陣列與模擬
B3: 函式與遞迴
🚀 模組三:進階題(4 級分)
C1: 堆疊與佇列
| 題號 | 題目名稱 | 難度 | 主題 | ZeroJudge 連結 |
|---|---|---|---|---|
| c471 | 物品堆疊 | ⭐⭐⭐ | 堆疊 (Stack) | 連結 |
| P-3-2 | 括弧配對 | ⭐⭐⭐ | 堆疊應用 | 待補充 |
C2: 遞迴與回溯
| 題號 | 題目名稱 | 難度 | 主題 | ZeroJudge 連結 |
|---|---|---|---|---|
| - | 全排列生成 | ⭐⭐⭐ | 回溯法 | 待補充 |
| - | N-皇后問題 | ⭐⭐⭐ | 回溯法 | 待補充 |
C3: 排序與二分搜尋
| 題號 | 題目名稱 | 難度 | 主題 | ZeroJudge 連結 |
|---|---|---|---|---|
| - | 互補團隊 | ⭐⭐⭐ | 排序、二分搜尋 | 待補充 |
| - | 圓環出口 | ⭐⭐⭐ | 二分搜尋變形 | 待補充 |
🏆 模組四:挑戰題(5 級分)
D1: 圖論
D2: 動態規劃
D3: 貪心與分治
📝 刷題建議
學習策略
- 循序漸進:按照模組順序練習,確保基礎紮實
- 理解優先:不要只是背解法,要理解為什麼這樣做
- 多次練習:同一類型的題目至少做 3-5 題
- 計時訓練:模擬考試環境,訓練時間管理能力
做題方法
- 讀題:仔細閱讀題目,找出關鍵資訊
- 分析:判斷題目類型,選擇合適的演算法
- 設計:在紙上寫出演算法思路或流程圖
- 實作:用 Python 實現你的解法
- 測試:用範例測資驗證正確性
- 優化:檢查時間複雜度,必要時優化
- 提交:在 OJ 平台提交並查看結果
- 反思:AC 後總結經驗,WA/TLE 時分析原因
常見錯誤
- ❌ Wrong Answer (WA):邏輯錯誤或未考慮特殊情況
- ❌ Time Limit Exceeded (TLE):演算法效率不夠或 I/O 太慢
- ❌ Runtime Error (RE):陣列越界、除以零等執行時錯誤
- ❌ Memory Limit Exceeded (MLE):使用過多記憶體
效能檢查清單
遇到 TLE 時,檢查:
- [ ] 是否使用
sys.stdin.readline()? - [ ] 是否使用
collections.deque實作佇列? - [ ] 時間複雜度是否符合題目限制?
- [ ] 是否有不必要的重複計算?