Skip to content

Commit f1a8a88

Browse files
authored
Update 1685-sum-of-absolute-differences-in-a-sorted-array.js
1 parent ae6553a commit f1a8a88

File tree

1 file changed

+12
-16
lines changed

1 file changed

+12
-16
lines changed

1685-sum-of-absolute-differences-in-a-sorted-array.js

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,16 @@
22
* @param {number[]} nums
33
* @return {number[]}
44
*/
5-
var getSumAbsoluteDifferences = function(nums) {
6-
let left = 0
7-
let right = nums.length - 2
8-
let begin = 0
9-
for(let i = 1, len = nums.length; i < len; i++) {
10-
begin += (nums[i] - nums[0])
11-
}
12-
13-
const res = [begin]
14-
for(let i = 1, len = nums.length; i < len; i++) {
15-
res.push(res[i - 1] - (nums[i] - nums[i - 1]) * (right - left))
16-
left += 1
17-
right -= 1
18-
}
19-
20-
return res
5+
const getSumAbsoluteDifferences = function(nums) {
6+
const res = [], n = nums.length
7+
let first = 0
8+
for(let i = 1; i < n; i++) {
9+
first += nums[i] - nums[0]
10+
}
11+
res[0] = first
12+
for(let i = 1; i < n; i++) {
13+
res[i] = res[i - 1] + (nums[i] - nums[i - 1]) * i - (nums[i] - nums[i - 1]) * (n - i)
14+
}
15+
16+
return res
2117
};

0 commit comments

Comments
 (0)