Minimum Operations to Make a Uni-Value Grid LeetCode solution in JavaScript

1
var minOperations = function (grid, x) {
2
let remainder = -Infinity,
3
flatten = [],
4
res = 0;
5

6
for (let i = 0; i < grid.length; i++) {
7
for (let j = 0; j < grid[i].length; j++) {
8
if (remainder === -Infinity) remainder = grid[i][j] % x;
9
else if (remainder !== grid[i][j] % x) {
10
return -1;
11
}
12
flatten.push(grid[i][j]);
13
}
14
}
15
flatten.sort((a, b) => a - b);
16
let median = flatten[~~(flatten.length / 2)];
17

18
for (let i = 0; i < flatten.length; i++) {
19
res += Math.abs(flatten[i] - median) / x;
20
}
21
return res;
22
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0