deno.land / x / masx200_leetcode_test@10.6.5 / kth-smallest-element-in-a-sorted-matrix / index.ts
123456789101112131415161718192021222324252627282930export default function kthSmallest(matrix: number[][], k: number): number { const n = matrix.length; let left = matrix[0][0]; let right = matrix[n - 1][n - 1]; while (left < right) { const mid = left + ((right - left) >> 1); if (check(matrix, mid, k, n)) { right = mid; } else { left = mid + 1; } } return left;}
function check(matrix: number[][], mid: number, k: number, n: number) { let i = n - 1; let j = 0; let num = 0; while (i >= 0 && j < n) { if (matrix[i][j] <= mid) { num += i + 1; j++; } else { i--; } } return num >= k;}
Version Info