1480. 一维数组的动态和
给你一个数组 nums
。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i])
。
请返回 nums
的动态和。
示例 1:
输入:nums = [1,2,3,4] 输出:[1,3,6,10] 解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。
示例 2:
输入:nums = [1,1,1,1,1] 输出:[1,2,3,4,5] 解释:动态和计算过程为 [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1+1] 。
示例 3:
输入:nums = [3,1,2,10,1] 输出:[3,4,6,16,17]
提示:
1 <= nums.length <= 1000
-10^6 <= nums[i] <= 10^6
原站题解
cpp 解法, 执行用时: 4 ms, 内存消耗: 8.6 MB, 提交时间: 2023-10-11 10:44:53
class Solution { public: vector<int> runningSum(vector<int>& nums) { for ( int i = 1; i < nums.size(); ++i ) nums[i] += nums[i-1]; return nums; } };
java 解法, 执行用时: 0 ms, 内存消耗: 40.8 MB, 提交时间: 2023-10-11 10:44:35
class Solution { public int[] runningSum(int[] nums) { for ( int i = 1; i < nums.length; ++i ) nums[i] += nums[i-1]; return nums; } }
python3 解法, 执行用时: 48 ms, 内存消耗: 15.1 MB, 提交时间: 2022-07-07 14:32:11
class Solution: def runningSum(self, nums: List[int]) -> List[int]: n = len(nums) for i in range(1, n): nums[i] += nums[i-1] return nums
python3 解法, 执行用时: 40 ms, 内存消耗: 15.1 MB, 提交时间: 2022-07-07 14:30:50
class Solution: def runningSum(self, nums: List[int]) -> List[int]: ans = [] for i, num in enumerate(nums): if i == 0: ans.append(num) else: ans.append(num + ans[-1]) return ans
golang 解法, 执行用时: 0 ms, 内存消耗: 2.6 MB, 提交时间: 2020-11-09 22:51:20
func runningSum(nums []int) []int { for i := 1; i < len(nums); i++ { nums[i] += nums[i-1] } return nums }
golang 解法, 执行用时: 4 ms, 内存消耗: 2.7 MB, 提交时间: 2020-11-09 22:48:36
func runningSum(nums []int) []int { ans := make([]int, len(nums)) sum := 0 for i, k := range nums { sum += k ans[i] = sum } return ans }
python3 解法, 执行用时: 40 ms, 内存消耗: 13.6 MB, 提交时间: 2020-11-09 22:46:59
class Solution: def runningSum(self, nums: List[int]) -> List[int]: ans = [] t = 0 for i in nums: t += i ans.append(t) return ans
python3 解法, 执行用时: 56 ms, 内存消耗: 13.7 MB, 提交时间: 2020-11-09 22:45:14
class Solution: def runningSum(self, nums: List[int]) -> List[int]: return [sum(nums[:i+1]) for i in range(0, len(nums))]