力扣第1013题 将数组分成和相等的三部分
Posted woodjay
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了力扣第1013题 将数组分成和相等的三部分相关的知识,希望对你有一定的参考价值。
力扣第1013题 将数组分成和相等的三部分
class Solution {
public:
bool canThreePartsEqualSum(vector<int>& A) {
int sum = accumulate(A.begin(), A.end(), 0);
if (sum % 3 != 0)
return false;
int temp = sum / 3;
int len = A.size();
int left = 0, right = len - 1;
int leftSum = A[left], rightSum = A[right];
while (left + 1 < right)
{
if (leftSum == temp && rightSum == temp)
{
return true;
}
if (leftSum != temp)
{
leftSum += A[++left];
}
if (rightSum != temp)
{
rightSum += A[--right];
}
}
return false;
}
};
以上是关于力扣第1013题 将数组分成和相等的三部分的主要内容,如果未能解决你的问题,请参考以下文章