알고리즘/리트코드
724. Find Pivot Index
lidar_expert
2023. 3. 8. 13:54
class Solution {
public:
int pivotIndex(vector<int>& nums) {
int total = 0;
for (int num : nums) {
total += num;
}
int leftSum = 0;
for (int i = 0; i < nums.size(); i++) {
int rightSum = total - leftSum - nums[i];
if (leftSum == rightSum) {
return i;
}
leftSum += nums[i];
}
return -1;
}
};
rightSum 이 total - leftSum - nums[i]; 라는 사실이 중요하다
[1,7,3,6,5,6]
#1
leftSum = 0 , num[0] = 1, rightSum = total - leftSum - num[0] = num[1] + num[2] + num[3] + num[4] + num[5];
#2
[1] [7] [3,6,5,6]
leftSum = 0 + num[0], num[1] = 7, rightSum = total - leftSum - num[1] = num[2] + num[3] + num[4] + num[5];