CPE 歷屆考題分析:難度 × 主題 × 真實答對率
CPE 歷屆考題分析:難度 × 主題 × 真實答對率
judge. — 內部數據報告 · v4 資料來源:cpe.mcu.edu.tw 歷屆試題公開測資(2013–2026,51 屆,334 題)· 主題分類為人工/AI 判讀 · 即時數據另見平台後台
/admin/analytics
分析 2013–2026 年間 51 屆有公開測資的 CPE 考試,涵蓋全部 A~G 七個題目位置(共 334 道不重複題目),並補上官網公布的逐屆平均答對題數,以及逐題的真實應試考生答對/答錯人數。
重點發現
難度曲線非常清楚,而且這次有真實考生數據驗證:A 題真實答對率 80.7%,一路單調遞減到 G 題只剩 31.4%。主題上同樣吻合——A、B 題幾乎只考數學/字串/陣列,DFS/BFS/圖論與動態規劃是 0 題;從 D 題開始 DP 明顯增加,E 題起圖論大量出現,到 F、G 題,圖論與 DP 合計超過一半。真實答對率的單調遞減,直接驗證了「用 A~G 位置代替官方星等」這個假設是合理的。
方法論與重要提醒
關於「星等」的定義:CPE 官網沒有在考題列表頁公布每題的官方星等,我們資料庫裡的難度欄位對所有 CPE 題目都是預設值「1」,並非真正的官方分級。本報告改用「題目在該屆的位置(A~G)」作為難度的替代指標——這是根據 CPE 一貫由易到難排序的慣例所做的合理推斷,仍是一項假設,並非官方認證。
主題分類(334 題全部)由人工/AI 逐題判讀考題敘述得出,分類本身涉及主觀判斷;少數幾題(PDF 測資已從官網下架、僅能靠題名推測)在下方表格中會特別標註。
資料格式提醒:CPE 官網從 2025-09-30 這屆開始換了新的網址格式,且不再直接公布預先算好的期望輸出,改成公布「參考解答原始碼」——本報告的資料是下載參考解答、自行編譯執行來產生期望輸出,而非直接採用官網現成答案。
逐屆平均答對題數(CPE 官方公布數據)
n = 51 屆 平均 1.14(滿分 7) 歷史最低 0.56(2014-12-23) 歷史最高 1.66(2023-03-21)
沒有明顯的長期上升或下降趨勢——12 年來平均答對題數大致在 0.6~1.7 題之間震盪,考題難度整體維持穩定,沒有證據顯示近年考試變難或變簡單(含最新的 2026-03-24、2026-05-26 兩屆,答對率分別是 0.65、0.75,落在正常區間內)。
| 屆別 | 平均答對題數 | 屆別 | 平均答對題數 | 屆別 | 平均答對題數 |
|---|---|---|---|---|---|
| 2013-10-01 | 1.38 | 2017-09-26 | 1.34 | 2021-12-21 | 1.28 |
| 2013-12-17 | 1.27 | 2017-12-19 | 1.29 | 2022-03-22 | 1.56 |
| 2014-03-25 | 0.93 | 2018-03-27 | 0.96 | 2022-05-24 | 1.36 |
| 2014-05-27 | 1.15 | 2018-05-29 | 1.51 | 2022-10-18 | 1.36 |
| 2014-09-23 | 1.09 | 2018-10-02 | 1.02 | 2022-12-13 | 1.38 |
| 2014-12-23 | 0.56 | 2018-12-18 | 1.09 | 2023-03-21 | 1.66 |
| 2015-03-24 | 0.89 | 2019-03-26 | 1.09 | 2023-05-23 | 1.62 |
| 2015-05-26 | 1.11 | 2019-05-28 | 0.81 | 2023-10-17 | 0.6 |
| 2015-10-06 | 0.6 | 2019-09-24 | 0.8 | 2023-12-12 | 0.87 |
| 2015-12-22 | 1.09 | 2019-12-17 | 1.51 | 2024-04-23 | 1.26 |
| 2016-03-22 | 1.42 | 2020-05-26 | 0.87 | 2024-05-21 | 1.16 |
| 2016-05-24 | 1.39 | 2020-06-09 | 1.35 | 2024-10-15 | 1.11 |
| 2016-10-04 | 0.82 | 2020-10-20 | 1.09 | 2024-12-10 | 1.55 |
| 2016-12-20 | 0.97 | 2020-12-22 | 1.0 | 2025-03-25 | 1.5 |
| 2017-03-28 | 0.65 | 2021-03-23 | 1.56 | 2025-05-20 | 1.2 |
| 2017-05-23 | 1.22 | 2021-10-19 | 1.02 | 2025-09-30 | 1.31 |
| 2025-12-09 | 1.08 | ||||
| 2026-03-24 | 0.65 | ||||
| 2026-05-26 | 0.75 |
各星等(A~G)答對/答錯統計
真實考生數據,51 屆加總。資料來自 CPE 官網每屆考題頁面公布的逐題統計(繳交次數/作答人數/答對人數),這是真實應試考生的作答結果,不是我們平台自己的使用者數據。
| 位置 | 作答人次 | 答對人次 | 答錯人次 | 答對率 |
|---|---|---|---|---|
| A | 71,735 | 57,869 | 13,866 | 80.7% |
| B | 46,580 | 36,951 | 9,629 | 79.3% |
| C | 25,619 | 19,989 | 5,630 | 78.0% |
| D | 11,105 | 7,454 | 3,651 | 67.1% |
| E | 5,697 | 3,725 | 1,972 | 65.4% |
| F | 3,700 | 1,258 | 2,442 | 34.0% |
| G | 1,985 | 624 | 1,361 | 31.4% |
答對率從 A 到 G 呈現非常乾淨的單調遞減曲線——與位置本身就是難度代理指標的假設高度吻合。
各星等(A~G)主題分布
334 道題,按位置加總。欄位順序按演算法難度由簡單到困難排列(純邏輯/陣列/數學/字串/模擬/幾何 → 排序搜尋/貪心/遞迴回溯 → 資料結構/圖論/動態規劃(最難)),可以直接看出每個位置裡有幾題本質上簡單、幾題本質上困難。
| 位置 | 純邏輯 | 陣列 | 數學 | 字串 | 模擬 | 幾何 | 排序/搜尋 | 貪心 | 遞迴/回溯 | 資料結構 | 圖論 | DP | 合計 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | 1 | 8 | 25 | 5 | 3 | 4 | 3 | 0 | 0 | 2 | 0 | 1 | 52 |
| B | 2 | 7 | 18 | 9 | 4 | 1 | 5 | 2 | 1 | 1 | 0 | 2 | 52 |
| C | 8 | 4 | 10 | 7 | 4 | 2 | 6 | 3 | 2 | 5 | 1 | 0 | 52 |
| D | 1 | 3 | 24 | 1 | 4 | 0 | 5 | 2 | 0 | 3 | 1 | 8 | 52 |
| E | 1 | 4 | 12 | 0 | 2 | 1 | 1 | 4 | 3 | 4 | 12 | 7 | 51 |
| F | 2 | 0 | 8 | 3 | 0 | 0 | 1 | 2 | 2 | 2 | 16 | 15 | 51 |
| G | 0 | 0 | 11 | 1 | 0 | 0 | 2 | 1 | 5 | 6 | 12 | 13 | 51 |
沒有任何一屆的 A、B 題涉及 DFS/BFS、圖論;DP 從 D 題起才明顯增加,圖論從 E 題起大量出現,到 F、G 題兩者合計已超過一半的題目。
逐屆 A 題列表
按日期排序(詳細版,B~G 題彙總於上表)。標註「同題」表示與更早的某屆重複出題。
| 屆別 | UVa 題號 | 題名 | 分類 | 考的是什麼 |
|---|---|---|---|---|
| 2013-10-01 | 10190 | Divide, But Not Quite Conquer! | 數學 | 反覆整除到 1 的合法性檢驗(模擬+條件判斷) |
| 2013-12-17 | 12602 | Nice Licence Plates | 數學 | 字母當作 26 進位數字換算成數值,再做差值比較 |
| 2014-03-25 | 10931 | Parity | 數學 | 計算整數二進位表示中 1 的個數(奇偶校驗) |
| 2014-05-27 | 10783 | Odd Sum | 數學 | 區間內奇數總和(等差數列求和) |
| 2014-09-23 | 579 | ClockHands | 幾何 | 計算時鐘時針分針之間的夾角 |
| 2014-12-23 | 494 | Kindergarten Counting Game | 字串 | 逐行計算單字數量(字串切詞) |
| 2015-03-24 | 591 | Box of Bricks | 陣列 | 把每疊磚塊移到平均高度所需的最少移動次數 |
| 2015-05-26 | 1585 | Score | 字串 | 依連續正確答案的長度累計分數(字串掃描) |
| 2015-10-06 | 455 | Periodic Strings | 字串 | 找出字串的最小重複週期 |
| 2015-12-22 | 11332 | Summing Digits | 數學 | 反覆求數位和直到剩一位數(數字根) |
| 2016-03-22 | 11764 | Cricket Field | 陣列 | 計算陣列中相鄰元素上升/下降的次數 |
| 2016-05-24 | 11942 | Lumberjack Sequencing | 陣列 | 檢查陣列是否為遞增或遞減排序 |
| 2016-10-04 | 11192 | Group Reverse | 字串 | 將字串依固定分組長度分別反轉 |
| 2016-12-20 | 11364 | Parking | 排序/搜尋 | 最小化到各點距離總和(中位數性質) |
| 2017-03-28 | 482 | Permutation Arrays | 陣列 | 依索引陣列重新排列另一個陣列 |
| 2017-05-23 | 1225 | Digit Counting | 數學 | 統計 1 到 N 中每個數字出現的次數 |
| 2017-09-26 | 11743 | Credit Check | 數學 | Luhn 演算法驗證信用卡號檢查碼 |
| 2017-12-19 | 10591 | Happy Number | 數學 | 反覆計算數位平方和並偵測是否收斂到 1 |
| 2018-03-27 | 488 | Triangle Wave | 純邏輯 | 依振幅與頻率印出三角波形圖案 |
| 2018-05-29 | 11455 | Behold My Quadrangle | 幾何 | 依四邊長判斷能否構成正方形/矩形/四邊形 |
| 2018-10-02 | 12650 | Dangerous Dive | 數學 | 從連續編號中找出遺漏的號碼 |
| 2018-12-18 | 11636 | Hello World! | 數學 | 計算達成 N 次複製所需的最少「貼上」操作次數(質因數分解) |
| 2019-03-26 | 11678 | Cards' Exchange | 資料結構 | 以集合判斷最多能配對交換的數量 |
| 2019-05-28 | 1594 | Ducci Sequence | 模擬 | 模擬相鄰元素取差值的序列,直到全零或進入循環 |
| 2019-09-24 | 11349 | Symmetric Matrix | 陣列 | 檢查二維矩陣是否對稱 |
| 2019-12-17 | 11677 | Alarm Clock | 數學 | 計算兩個時間點之間的分鐘數(時間運算) |
| 2020-05-26 | 10268 | 498-bis | 數學 | 計算多項式在給定值的導函數值 |
| 2020-06-09 | 11498 | Division of Nlogonia | 幾何 | 依分割點座標判斷點落在哪個象限區域 |
| 2020-10-20 | 10050 | Hartals | 模擬 | 依週期參數模擬多方罷工日期是否重疊 |
| 2020-12-22 | 11689 | Soda Surpler | 模擬 | 模擬用空瓶換錢買新飲料的迴圈直到錢不夠 |
| 2021-03-23 | 12019 | Doom's Day Algorithm | 數學 | Conway 世界末日演算法計算星期幾(曆法運算) |
| 2021-10-19 | 12959 | Strategy Game | 陣列 | 模擬多輪多玩家得分,找出最高分玩家 |
| 2021-12-21 | 1260 | Sales | 資料結構 | 以樹狀陣列(BIT)計算前面有多少筆數值不大於它 |
| 2022-03-22 | 12908 | The book thief | 數學 | 已知頁碼總和反推遺漏頁碼與總頁數(等差數列+解方程) |
| 2022-05-24 | 10190 | Divide, But Not Quite Conquer! | 數學 | 同題(2013-10-01) |
| 2022-10-18 | 11332 | Summing Digits | 數學 | 同題(2015-12-22) |
| 2022-12-13 | 10931 | Parity | 數學 | 同題(2014-03-25) |
| 2023-03-21 | 10035 | Primary Arithmetic | 數學 | 模擬直式加法,計算需要進位的次數 |
| 2023-05-23 | 11934 | Magic Formula | 數學 | 計算二次函數在區間內能被特定數整除的次數 |
| 2023-10-17 | 11576 | Scrolling Sign | 字串 | 跑馬燈字串(首尾相接)中搜尋子字串出現次數 |
| 2023-12-12 | 392 | Polynomial Showdown | 數學 | 以 Horner's method 求值比較多項式 |
| 2024-04-23 | 10041 | Vito's family | 排序/搜尋 | 排序後取中位數,最小化絕對值距離總和 |
| 2024-05-21 | 11634 | Generate random numbers | 數學 | 模擬指定的線性同餘亂數產生公式並求極值 |
| 2024-10-15 | 10008 | What's Cryptanalysis? | 排序/搜尋 | 統計並排序文字中每個字母出現的頻率 |
| 2024-12-10 | 12250 | Language Detection | 字串 | 依關鍵字比對判斷字串屬於哪種語言 |
| 2025-03-25 | 11461 | Square Numbers | 數學 | 計算區間內完全平方數的個數 |
| 2025-05-20 | 11063 | B2-sequence | 陣列 | 驗證序列中兩兩元素和是否皆不重複 |
| 2025-09-30 | 100 | The 3n + 1 problem | 數學 | 經典 Collatz 序列模擬,求範圍內最長序列長度 |
| 2025-12-09 | 10079 | Pizza Cutting | 數學 | 用直線切披薩,公式計算最多能切出幾塊 |
| 2026-03-24 | 10591 | Happy Number | 數學 | 同題(2017-12-19) |
| 2026-05-26 | 11639 | Guard the Land | 幾何 | 兩個守衛負責矩形區域,找最佳擺放方式覆蓋土地 |
重複出題清單
22 題出現在一次以上的考試。「位置」欄位列出該題每次出現時所在的位置,若不只一種代表跨屆時位置有變動。
| 題目 | 分類 | 位置 | 出現次數 | 各次出現的屆別 @ 位置 |
|---|---|---|---|---|
| UVa 437 · The Tower of Babylon | DP | G | 3 | 2017-12-19@G, 2021-10-19@G, 2022-10-18@G |
| UVa 10931 · Parity | 數學 | A | 2 | 2014-03-25@A, 2022-12-13@A |
| UVa 406 · Prime Cuts | 數學 | B / D | 2 | 2014-03-25@B, 2016-03-22@D |
| UVa 11039 · Building designing | DP | E | 2 | 2014-05-27@E, 2026-03-24@E |
| UVa 1101 · addmul | 數學 | G | 2 | 2014-05-27@G, 2022-05-24@G |
| UVa 10409 · Die Game | DP | B | 2 | 2014-09-23@B, 2018-10-02@B |
| UVa 10908 · Largest Squares | 陣列 | C | 2 | 2015-05-26@C, 2024-05-21@C |
| UVa 10190 · Divide, But Not Quite Conquer! | 數學 | A | 2 | 2013-10-01@A, 2022-05-24@A |
| UVa 11332 · Summing Digits | 數學 | A | 2 | 2015-12-22@A, 2022-10-18@A |
| UVa 706 · LC-Display | 純邏輯 | C | 2 | 2015-12-22@C, 2025-12-09@C |
| UVa 10415 · Eb Alto Saxophone Player | 純邏輯 | C | 2 | 2016-10-04@C, 2020-12-22@C |
| UVa 11624 · Fire! | 圖論 | G | 2 | 2016-10-04@G, 2023-03-21@G |
| UVa 10242 · Fourth Point!! | 幾何 | B / C | 2 | 2016-12-20@B, 2023-12-12@C |
| UVa 10721 · Bar Codes | DP | F / G | 2 | 2016-12-20@F, 2023-12-12@G |
| UVa 10591 · Happy Number | 數學 | A | 2 | 2017-12-19@A, 2026-03-24@A |
| UVa 11233 · Deli Deli | 字串 | C | 2 | 2017-12-19@C, 2024-04-23@C |
| UVa 118 · Mutant Flatworld Explorers | 模擬 | C | 2 | 2018-03-27@C, 2021-12-21@C |
| UVa 11321 · Sort! Sort!! And Sort!!! | 排序/搜尋 | B / C | 2 | 2018-05-29@C, 2025-12-09@B |
| UVa 11349 · Symmetric Matrix | 陣列 | A / B | 2 | 2019-09-24@A, 2023-05-23@B |
| UVa 10010 · Where's Waldorf? | 陣列 | B / D | 2 | 2019-12-17@D, 2026-03-24@B |
| UVa 10268 · 498-bis | 數學 | A / C | 2 | 2020-05-26@A, 2024-12-10@C |
| UVa 10189 · Minesweeper | 陣列 | B | 2 | 2020-06-09@B, 2026-05-26@B |
最多次出現的是《The Tower of Babylon》(經典區間 DP 問題),三次都固定出現在 G 題位置——這種「幾乎每次都在同一難度位置」的題目,對準備考試的學生有實質參考價值。
追蹤指標進度
- ✅ 已完成 — 逐屆平均答對題數:已補進資料庫(
Contest.avgCorrectCount),並畫出逐屆趨勢圖。 - ✅ 已完成 — 對 B~G 題做同樣的主題分類:334 道題全部分類完成,並以 Tag 形式存進資料庫,可透過
/problems?tag=篩選。 - ✅ 已完成 — 重複出題統計:見上方清單,共 22 題出現在一次以上的考試中。
- ✅ 已完成 — 逐屆各星等答對/答錯/總答題率:發現 CPE 官網每屆考題頁面其實有公布逐題的真實統計(繳交次數、作答人數、答對人數),已補進資料庫(
ContestProblem.submissions/attempted/correct+Contest.totalCandidates)。 - 🟡 上線 — 平台自身使用數據:各主題實際 AC 率/平均嘗試次數:已在後台新增即時分析頁面
/admin/analytics,隨學生實際使用累積數據,隨時可查最新結果,不需要再另外產一份報告。 - ⬜ 尚待評估 — 逐年主題佔比趨勢:目前的「難度 × 主題」表是把 12 年份加總後的結果;如果想看「近年 A 題是否開始出現過去沒有的類型」,需要再按年份切分同一份資料重新統計,目前尚未實作。
一起討論
登入後即可加入討論。
載入留言…