724. Find Pivot Index ¶ Time: $O(n)$ Space: $O(1)$ C++JavaPython 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15class Solution { public: int pivotIndex(vector<int>& nums) { const int sum = accumulate(nums.begin(), nums.end(), 0); int prefix = 0; for (int i = 0; i < nums.size(); ++i) { if (prefix == sum - prefix - nums[i]) return i; prefix += nums[i]; } return -1; } }; 1 2 3 4 5 6 7 8 9 10 11 12 13 14class Solution { public int pivotIndex(int[] nums) { final int sum = Arrays.stream(nums).sum(); int prefix = 0; for (int i = 0; i < nums.length; ++i) { if (prefix == sum - prefix - nums[i]) return i; prefix += nums[i]; } return -1; } } 1 2 3 4 5 6 7 8 9 10 11class Solution: def pivotIndex(self, nums: list[int]) -> int: summ = sum(nums) prefix = 0 for i, num in enumerate(nums): if prefix == summ - prefix - num: return i prefix += num return -1