官方解答 · 置頂Python
官方解答|讀值順序檢查
官方解答
Python #248:讀值順序檢查
解題規則
實驗員想比較同一工具在兩種參數順序下的結果。
完成 combine(a,b),回傳a 加上 b。分別將 (a,b) 和交換後的 (b,a) 傳入,回傳 [原順序結果, 交換順序結果]。即使兩次結果相同仍都要保留。
處理步驟
第一次以 (a,b) 呼叫 combine,第二次以 (b,a) 呼叫。兩次皆套用同一規則,結果相同時仍回傳兩格。
為何正確
輔助函式只使用自己的參數,回傳該規則的結果;solve 按規定順序傳入原值或前一步結果。因此每次函式呼叫都完成其指定工作,組合結果也符合題目。
邊界與注意事項
本題輸入範圍:a、b 均為 -100~100 的整數。
範例追蹤
依參數順序 a, b 傳入 [-9,0]。直接將參數代入「兩數相加」指定運算。最後回傳 [-9, -9]。結果由 return 回傳,不使用 print。
複雜度
設輸入及必要輸出的總大小為 n;複製、轉換或掃描最壞時間 O(n),保存中間資料與回傳結果最壞需要 O(n) 空間。
CodeSprout 官方解答 · 題意分析、解題步驟與完整參考程式
def combine(a, b):
return a + b
def solve(a, b):
return [combine(a, b), combine(b, a)]
留言討論 0
登入 後就能留言,一起討論不同的寫法。