Minimum Average Difference LeetCode solution in JavaScript

1
/**
2
* @param {number[]} nums
3
* @return {number}
4
*/
5
var minimumAverageDifference = function (nums) {
6
let firstSum = 0;
7
let lastSum = 0;
8

9
for (let num of nums) lastSum += num;
10

11
let minAvg = Number.POSITIVE_INFINITY;
12
let minAvgIndex = 0;
13

14
for (let i = 0; i < nums.length; i++) {
15
firstSum += nums[i];
16
lastSum -= nums[i];
17

18
if (i !== nums.length - 1)
19
currAvg = Math.abs(
20
Math.floor(firstSum / (i + 1)) -
21
Math.floor(lastSum / (nums.length - i - 1))
22
);
23
else currAvg = Math.abs(Math.floor(firstSum / (i + 1)));
24

25
if (currAvg < minAvg) {
26
minAvg = currAvg;
27
minAvgIndex = i;
28
}
29
}
30

31
return minAvgIndex;
32
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0