Python 程式:查詢在開頭插入的最小值,以使所有字首和為正
假設我們有一個名為 nums 的數字列表。我們必須找到可以在 nums 的開頭插入的最小正值,以便生成的列表的字首和都大於 0。
因此,如果輸入類似於 nums = [3, -6, 4, 3],則輸出將為 4,因為如果我們將 4 插入到列表中,則我們有 [4, 3, -6, 4, 3]。現在字首和為 [4, 7, 1, 5, 8],全部大於 0。
為了解決這個問題,我們將遵循以下步驟:
在位置 0 將 0 插入 nums
對於 i 從 1 到 nums 的大小 - 1,執行以下操作:
nums[i] := nums[i] + nums[i - 1]
返回 1 - nums 的最小值
示例
讓我們看看以下實現以更好地理解
def solve(nums):
nums.insert(0, 0)
for i in range(1, len(nums)):
nums[i] += nums[i - 1]
return 1 - min(nums)
nums = [3, -6, 4, 3]
print(solve(nums))輸入
[3, -6, 4, 3]
輸出
4
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP