Given an array nums
. We define a running sum of an array as runningSum[i] = sum(nums[0]…nums[i])
.
Return the running sum of nums
.
Input: nums = [1,2,3,4] Output: [1,3,6,10] Explanation: Running sum is obtained as follows: [1, 1+2, 1+2+3, 1+2+3+4].
Input: nums = [1,1,1,1,1] Output: [1,2,3,4,5] Explanation: Running sum is obtained as follows: [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1+1].
Input: nums = [3,1,2,10,1] Output: [3,4,6,16,17]
1 <= nums.length <= 1000
-10^6 <= nums[i] <= 10^6
# @param {Integer[]} nums
# @return {Integer[]}
def running_sum(nums)
for i in 1...nums.length
nums[i] += nums[i - 1]
end
return nums
end
impl Solution {
pub fn running_sum(nums: Vec<i32>) -> Vec<i32> {
let mut running_sums = nums;
for i in 1..running_sums.len() {
running_sums[i] += running_sums[i - 1];
}
running_sums
}
}