Find the Kth Smallest Sum of a Matrix With Sorted Rows LeetCode solution in JavaScript

1
/**
2
* @param {number[][]} mat
3
* @param {number} k
4
* @return {number}
5
*/
6
var kthSmallest = function (mat, k) {
7
var m = mat.length;
8
var n = m ? mat[0].length : 0;
9
if (!m || !n) return -1;
10
var sums = [0];
11
for (var idx = 0; idx < m; idx++) {
12
var newSums = [];
13
for (var sum of sums) {
14
for (var i = 0; i < n && i < k; i++) {
15
var newSum = sum + mat[idx][i];
16
if (newSums.length < k) {
17
newSums.push(newSum);
18
} else if (newSum < newSums[k - 1]) {
19
newSums.pop();
20
newSums.push(newSum);
21
} else {
22
break;
23
}
24
newSums.sort((a, b) => a - b);
25
}
26
}
27
sums = newSums;
28
}
29
return sums[k - 1];
30
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0