leetcode 1020. Partition Array Into Three Parts With Equal Sum

class Solution {
    public boolean canThreePartsEqualSum(int[] A) {
        int sum = 0;
        for (int i = 0; i < A.length; ++i) sum += A[i];
        if (sum % 3 != 0) return false;
        int target = sum / 3;
        sum = 0;
        int parts = 0;
        for (int j = 0; j < A.length; ++j) {
            sum += A[j];
            if (sum == target) {
                sum = 0;
                parts += 1;
            }
        }
        return parts == 3 && sum == 0;
    }
}

猜你喜欢

转载自www.cnblogs.com/exhausttolive/p/10589218.html