困難Class (類別)✓ 已完成
476. 雙路狀態日誌
模擬器把每筆訊號送往兩個獨立狀態盒之一,請保存分流與狀態紀錄。
用同一個Bucket類別建立兩個獨立物件:左value初始為initial,右value初始為0;各自count為0、received為空清單。依原順序處理changes,每筆只送一邊。分流規則:「amount大於或等於0時送左,否則送右」。所有判斷使用該筆處理前的狀態。接收物件將value改成「目前value加amount」,再將count加1、把原amount加入received;另一邊完全不變。每一步都保存 [左value,右value] 快照,最後回傳每個事件處理後的 [左value,右value] 清單。
傳入的資料
initial:初始整數;changes:依序到達的整數清單。
回傳的答案
以題目指定的清單、字典、文字、數字或布林值回傳;不回傳物件實例。
看個例子
範例 1
傳入
[0, []]回傳
[]範例 2
傳入
[-3, [2, -1, 4]]回傳
[[-1, 0], [-1, -1], [3, -1]]資料範圍
initial 為 -10~10;changes 長度0~8,每個數為 -6~6。索引從0開始,每一步必須使用當時狀態。
💡 給我一點提示+
先確認 __init__ 要保存哪些屬性,再逐步完成方法;由 solve 建立物件並回傳一般資料。
小提醒
以 solve(...) 作為測試入口,用 return 回傳答案。需要時可在上方加入 import、自訂函式與類別;不需要自己讀取輸入。
公開案例固定為 3 組。自訂案例只用於測試,不納入提交評分。0 / 17 組自訂案例
提交結果
測試結果
公開與自訂案例按「測試程式」查看執行結果。
>_每一次嘗試,都是進步。結果會顯示在這裡。
測試在瀏覽器內執行,不會標記完成或增加 XP。Python 首次載入需要網路。