每週挑戰賽由 Mohammad S. Anwar 組織,是一場友好的競賽,開發者透過解決兩個任務進行競爭。它鼓勵所有語言和級別的開發者透過學習、分享和娛樂來參與。
每週挑戰中的任務 2:逐步要求開發者找出起始值,使逐步總和永遠不會小於 1。
在這篇文章中,我討論並展示了我的 Python 語言解決方案,任務 2:一步一步,並總結了一個簡短的結論。
給你一個整數數組,@ints。
寫一個腳本來找出最小正起始值,使得逐步總和永遠不會小於 1。
每週挑戰 302,任務 2:一步一步
範例 1 - 3 展示了給定輸入的預期輸出。
Input: @ints = (-3, 2, -3, 4, 2) Output: 5
起始值為 5。
5 + (-3) = 2 2 + (+2) = 4 4 + (-3) = 1 1 + (+4) = 5 5 + (+2) = 7
Input: @ints = (1, 2) Output: 1
Input: @ints = (1, -2, -3) Output: 5
def return_min_start(ints: list[int]) -> int | None: for start_value in range(1, 1000000): step_sum = start_value + ints[0] if step_sum < 1: continue for index in range(1, len(ints)): step_sum += ints[index] if step_sum < 1: break if step_sum >= 1: return start_value return None
我的解決方案使用 for 迴圈和 if 語句來增量搜尋與任務要求相符的 start_value:
在這篇文章中,我討論了任務 2:一步一步,並提出了我的解決方案。
在每週挑戰網站上了解有關最新和過去挑戰的更多資訊:
https://theweeklychallenge.org/
了解更多有關參加每週挑戰常見問題的資訊:
https://theweeklychallenge.org/faq/
以上是用 Python 逐步解決每週挑戰任務的詳細內容。更多資訊請關注PHP中文網其他相關文章!