CodeSprout程式萌芽
← 返回題庫 Python 基礎語法 / 第 187 題 操作教學 ↗
中等While Loop (迴圈)

187. 反向訊號日誌

While Loop (迴圈)while反向索引break

記錄員從最後一筆訊號向前檢視,請保存原位置與更新後狀態。

使用 while 從 values 的最後一格向左移動。遇到第一個符合「大於0的值」的格子就停止且不處理該格。狀態從0開始,每格「把原值加到狀態」。依實際由右往左的處理順序記錄 [原索引,更新後狀態]。回傳 [紀錄清單,停止索引];全部讀完或原清單為空,停止索引為-1。所有相鄰比較與首次/末次出現仍以原清單判斷。

傳入的資料

values:整數清單,可能為空。

回傳的答案

依題意回傳指定結果;使用 return,不用 print。

範例 1
傳入[[]]
回傳[[], -1]
範例 2
傳入[[0]]
回傳[[[0, 0]], -1]

清單長度 0~12;每個值為 -100~100 的整數。

💡 給我一點提示+

先把輸入、處理步驟與回傳格式分開想,再逐步完成題目規定的操作。

小提醒

以 solve(...) 作為測試入口,用 return 回傳答案。需要時可在上方加入 import、自訂函式與類別;不需要自己讀取輸入。

雲端草稿 PRO
跨裝置接續尚未提交的程式
</>你的程式碼
Python
本機草稿自動保存Tab 縮排・Esc 再 Tab 離開編輯器 ⌘ / Ctrl + Enter 測試

測試會執行 3 組公開案例與你新增的自訂案例。 登入後可提交程式,通過全部公開與隱藏測資後標記完成。

登入後提交

公開案例固定為 3 組。自訂案例只用於測試,不納入提交評分。0 / 17 組自訂案例

測試在瀏覽器內執行,不會標記完成或增加 XP。Python 首次載入需要網路。