CodeSprout程式萌芽
中等第 402 題 · 讀值統計卡
CodeSprout 官方2026/10/04 00:19
官方解答 · 置頂Python

官方解答|讀值統計卡

官方解答

Python #402:讀值統計卡

解題規則

記錄員需要比較同一組讀值的兩項統計摘要。

匯入 statistics。兩項都使用原始輸入分別計算,不讓前一項改變後一項資料。第一項是所有數的算術平均;第二項是所有出現次數最多的值清單,依首次出現順序。回傳 [第一項,第二項]。

處理步驟

匯入 statistics;兩項皆用原始參數獨立計算,再依題目順序回傳兩格清單。 本題輸入保證非空。平均使用全部原值,中位數依排序位置,眾數依出現次數與首次出現順序。

為何正確

標準模組函式各自實作所指定的日期、文字或統計運算。篩選依原值、轉換依保留項目、摘要依規定集合進行,因此輸出的資料來源與型態一致。

邊界與注意事項

本題輸入範圍:清單長度 1~12;每個數為 1~100。mode 遇到並列眾數時取原清單最先出現者;multimode 也依首次出現順序。 眾數並列時依原清單首次出現順序;round 的 .5 邊界依 Python 規則取最接近的偶數。

範例追蹤

依參數順序 values 傳入 [[1,2,2,5]]。直接將參數代入「算術平均/所有眾數」指定運算。最後回傳 [2.5, [2]]。結果由 return 回傳,不使用 print。

複雜度

設數量為 n;中位數等排序統計最壞時間 O(n log n),其他掃描統計為 O(n),中間資料及回傳資料最壞 O(n) 空間。

CodeSprout 官方解答 · 題意分析、解題步驟與完整參考程式

import statistics

def solve(values):
    return [statistics.mean(values), statistics.multimode(values)]

留言討論 0