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

官方解答|標籤加工線

官方解答

Python #271:標籤加工線

解題規則

標籤依序通過兩個文字處理工具,請保留兩站的加工結果。

寫兩個函式。first_step(text) 回傳轉為小寫的文字;second_step(text) 回傳原文字連接兩次。先把原輸入交給第一函式,再把第一步結果交給第二函式。回傳 [第一步結果, 第二步結果]。

處理步驟

先保存 first_step 的文字結果,再把該結果交給 second_step;保留兩步的回傳值。

為何正確

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

邊界與注意事項

本題輸入範圍:text 長度為 0~80;只含 ASCII 字元(編碼 0~127),不包含任何非 ASCII 字元。

範例追蹤

依參數順序 text 傳入 ["AaB2"]。關鍵中間資料為 first = 'aab2';second = 'aab2aab2'。最後回傳 ['aab2', 'aab2aab2']。結果由 return 回傳,不使用 print。

複雜度

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

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

def first_step(text):
    return text.lower()

def second_step(text):
    return text * 2

def solve(text):
    first = first_step(text)
    second = second_step(first)
    return [first, second]

留言討論 0