2348. Number of Zero-Filled Subarrays - Medium

前往題目

想法

  • 想法大致和以下答案一樣,但有點複雜(例如n個連續零,就加上n + n - 1 + n - 2 + ... + 0)

思路

  1. 走過所有數字
  2. 每次遇到0,計數器+1result直接加上當前zero的數量

因為如果00subarray1+2個;000subarray1+2+3個,以此類推

Code

class Solution {
    public long zeroFilledSubarray(int[] nums) {
        long res = 0;
        int count = 0; // Consecutive zeros

        // Go through all numbers
        for (int i = 0; i < nums.length; ++i) {
            if (nums[i] == 0) {
                // 1 more zero
                ++count;
                res += count;
            } else {
                count = 0;
            }
        }

        return res;
    }
}

2348. Number of Zero-Filled Subarrays - Medium
https://f88083.github.io/2024/05/30/2348-Number-of-Zero-Filled-Subarrays-Medium/
作者
Simon Lai
發布於
2024年5月30日
許可協議