CodeSprout程式萌芽
中等第 256 題 · 讀值加工線
CodeSprout 官方2026/10/04 00:19
官方解答 · 置頂Python

官方解答|讀值加工線

官方解答

Python #256:讀值加工線

解題規則

讀值先通過第一個換算工具,再加入另一讀值交給第二個工具。

first_step(x) 回傳 x 的平方;second_step(x) 回傳 x 的轉文字後字元數(負號也計算)。先計算 first_step(a),再把「第一步結果加 b」交給 second_step。回傳 [第一步結果, 第二步結果]。請保留兩個獨立函式。

處理步驟

由 first_step 處理 a,保存第一步;以第一步結果加 b 作為 second_step 的輸入。

為何正確

輔助函式只使用自己的參數,回傳該規則的結果;solve 按規定順序傳入原值或前一步結果。因此每次函式呼叫都完成其指定工作,組合結果也符合題目。

邊界與注意事項

本題輸入範圍:a、b 均為 -100~100 的整數。

範例追蹤

依參數順序 a, b 傳入 [-9,0]。關鍵中間資料為 first = 81;second = 2。最後回傳 [81, 2]。結果由 return 回傳,不使用 print。

複雜度

設輸入及必要輸出的總大小為 n;複製、轉換或掃描最壞時間 O(n),保存中間資料與回傳結果最壞需要 O(n) 空間。

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

def first_step(x):
    return x * x

def second_step(x):
    return len(str(x))

def solve(a, b):
    first = first_step(a)
    second = second_step(first + b)
    return [first, second]

留言討論 0