diff --git a/c/1480-running-sum-of-1d-array.c b/c/1480-running-sum-of-1d-array.c new file mode 100644 index 000000000..4dd0142a6 --- /dev/null +++ b/c/1480-running-sum-of-1d-array.c @@ -0,0 +1,20 @@ +/** + * 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. + * + * Time: O(n) + * Space: O(n) + */ + +int* runningSum(int* nums, int numsSize, int* returnSize){ + int *ret = malloc(numsSize * sizeof(int)); + *returnSize = numsSize; + + for (int i = 0; i < numsSize; i++) { + ret[i] = i ? nums[i] + ret[i-1] : nums[i]; + } + + return ret; +}