[leetcode]Max Consecutive Ones II
反转0,会将前一段和这一段拼起来。所以记录上一段1的个数和这一段1的个数。
class Solution:
    def findMaxConsecutiveOnes(self, nums: List[int]) -> int:
        maxCnt = 0
        lastCnt = -1
        thisCnt = 0
        for i in range(len(nums)):
            if nums[i] == 1:
                thisCnt += 1
            else: # 0
                maxCnt = max(maxCnt, lastCnt + 1 + thisCnt)
                lastCnt = thisCnt
                thisCnt = 0
        maxCnt = max(maxCnt, lastCnt + 1 + thisCnt)
        return maxCnt
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号