⬆︎
×

[LC] 2270 Number of Ways to Split Array

Hyplus目录

Java

/**
 * <a href="https://leetcode.cn/problems/number-of-ways-to-split-array/">Number of Ways to Split Array</a>
 * 数组;前缀和
 */
class Solution {
    public int waysToSplitArray(int[] nums) {
        int n = nums.length;
        long leftSum = 0, rightSum = 0;
        for (int num : nums) {
            rightSum += num;
        }

        int res = 0;
        for (int i = 0; i < n - 1; i++) {
            leftSum += nums[i];
            rightSum -= nums[i];
            if (leftSum >= rightSum) {
                res++;
            }
        }
        return res;
    }
}

Go

func waysToSplitArray(nums []int) int {
    n := len(nums)
    leftSum, rightSum := 0, 0
    for _, num := range nums {
        rightSum += num
    }

    res := 0
    for i := 0; i < n-1; i++ {
        leftSum += nums[i]
        rightSum -= nums[i]
        if leftSum >= rightSum {
            res++
        }
    }
    return res
}

发表评论