2369. Check if There is a Valid Partition For The Arra
难度:Medium
class Solution:
def validPartition(self, nums: List[int]) -> bool:
f = [False] * 4
f[0] = True
p = 1
for i in range(1, len(nums)):
p = (p+1) % 4
f[p] = False
if nums[i] == nums[i-1]:
f[p] |= f[(p+2)%4]
if i>=2 and (nums[i]==nums[i-1] and nums[i-1]==nums[i-2]) or (nums[i]==nums[i-1]+1 and nums[i-1]==nums[i-2]+1):
f[p] |= f[(p+1)%4]
return f[p]