CodeSprout程式萌芽
← 返回題庫 Python 基礎語法 / 第 499 題 操作教學 ↗
困難Class (類別)

499. 訊號狀態日誌

Class (類別)類別方法iffor快照

模擬器依序收到正負讀值變動,請追蹤接受與拒絕紀錄以及當時狀態。

Tracker 保存 initial、value、accepted、rejected、history。value初值為initial,兩個計數初值0,history初值空清單。按原順序處理changes,索引從0開始。接受規則:「每筆都接受」。接受時把value改成「直接改成 amount」並將accepted加1;拒絕時value不變、rejected加1。無論接受或拒絕,都在該步結束時記錄value。最後回傳每個事件處理後的value清單;拒絕事件也記錄未變的值。

傳入的資料

initial:初始整數;changes:依序到達的整數清單。

回傳的答案

以題目指定的清單、字典、文字、數字或布林值回傳;不回傳物件實例。

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

initial 為 -10~10;changes 長度0~8,每個數為 -6~6。索引從0開始,每一步必須使用當時狀態。

💡 給我一點提示+

先確認 __init__ 要保存哪些屬性,再逐步完成方法;由 solve 建立物件並回傳一般資料。

小提醒

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

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

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

登入後提交

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

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