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
}