leetcode 665 非遞減數列

2022-06-24 03:57:16 字數 940 閱讀 2194

給你乙個長度為 n 的整數陣列,請你判斷在 最多 改變 1 個元素的情況下,該陣列能否變成乙個非遞減數列。

我們是這樣定義乙個非遞減數列的: 對於陣列中所有的 i (0 <= i <= n-2),總滿足 nums[i] <= nums[i + 1]。

示例 1:

輸入: nums = [4,2,3]

輸出: true

解釋: 你可以通過把第乙個4變成1來使得它成為乙個非遞減數列。

示例 2:

輸入: nums = [4,2,1]

輸出: false

解釋: 你不能在只改變乙個元素的情況下將其變為非遞減數列。

說明:1 <= n <= 10 ^ 4

- 10 ^ 5 <= nums[i] <= 10 ^ 5

class solution:

def checkpossibility(self, nums: list[int]) -> bool:

def is_sorted(a:list[int])->bool:

n=len(a)

for i in range(n-1):

if a[i]>a[i+1]:

return false

return true

n=len(nums)

for i in range(n-1):

a=nums[i]

b=nums[i+1]

if a>b:

nums[i]=b

if(is_sorted(nums)):

return true

else:#[3,4,2,3] [5,7,1,8]

nums[i]=a

nums[i+1]=a

return is_sorted(nums)

return true

非遞減數列 leetcode665

class solution object defcheckpossibility self,nums type nums list int rtype bool 判斷截斷點,對截斷點進行分析 count 0 i 0length len nums for j in range length 1 if...

Leetcode 665 非遞減數列

給定乙個長度為n的整數陣列,你的任務是判斷在最多改變1個元素的情況下,該陣列能否變成乙個非遞減數列。我們是這樣定義乙個非遞減數列的 對於陣列中所有的i 1 i n 滿足array i array i 1 示例 1 輸入 4,2,3 輸出 true解釋 你可以通過把第乙個4變成1來使得它成為乙個非遞減...

leetcode 665 非遞減數列

非遞減數列 給你乙個長度為 n 的整數陣列,請你判斷在 最多 改變 1 個元素的情況下,該陣列能否變成乙個非遞減數列。我們是這樣定義乙個非遞減數列的 對於陣列中所有的 i 0 i n 2 總滿足 nums i nums i 1 示例 1 輸入 nums 4,2,3 輸出 true 解釋 你可以通過把...