思路:遍歷整個陣列,如果遇到nums[i]>nums[i+1]
的情況,則要麼修改nums[i]
,要麼修改nums[i+1]
。若修改一次就能成功,則去掉nums[i]
或者num[i+1]
,剩下的陣列必然是非遞減的。
class solution:
def checkpossibility(self, nums):
""":type nums: list[int]
:rtype: bool
"""for i in range(len(nums)-1):
if nums[i]>nums[i+1]:
s1 = nums[0:i]+nums[i+1:]
if s1==sorted(s1):
return true
s2 = nums[0:i+1]+nums[i+2:]
if s2==sorted(s2):
return true
return false
return true
665 非遞減數列
給定乙個長度為 n 的整數陣列,你的任務是判斷在最多改變 1 個元素的情況下,該陣列能否變成乙個非遞減數列。我們是這樣定義乙個非遞減數列的 對於陣列中所有的 i 1 i n 滿足 array i array i 1 示例 1 輸入 4,2,3 輸出 true 解釋 你可以通過把第乙個4變成1來使得它...
665 非遞減數列
給你乙個長度為 n 的整數陣列,請你判斷在 最多 改變 1 個元素的情況下,該陣列能否變成乙個非遞減數列。我們是這樣定義乙個非遞減數列的 對於陣列中所有的 i 0 i n 2 總滿足 nums i nums i 1 示例 1 輸入 nums 4,2,3 輸出 true 解釋 你可以通過把第乙個4變成...
665 非遞減數列
給你乙個長度為 n 的整數陣列,請你判斷在 最多 改變 1 個元素的情況下,該陣列能否變成乙個非遞減數列。我們是這樣定義乙個非遞減數列的 對於陣列中所有的 i 0 i n 2 總滿足 nums i nums i 1 示例 1 輸入 nums 4,2,3 輸出 true 解釋 你可以通過把第乙個4變成...