diff --git a/solution/1300-1399/1380.Lucky Numbers in a Matrix/README.md b/solution/1300-1399/1380.Lucky Numbers in a Matrix/README.md index f654912945c9d..9e1179eaedd60 100644 --- a/solution/1300-1399/1380.Lucky Numbers in a Matrix/README.md +++ b/solution/1300-1399/1380.Lucky Numbers in a Matrix/README.md @@ -202,6 +202,36 @@ function luckyNumbers(matrix: number[][]): number[] { } ``` +#### JavaScript + +```js +/** + * @param {number[][]} matrix + * @return {number[]} + */ +var luckyNumbers = function (matrix) { + const m = matrix.length; + const n = matrix[0].length; + const rows = new Array(m).fill(1 << 30); + const cols = new Array(n).fill(0); + for (let i = 0; i < m; ++i) { + for (let j = 0; j < n; j++) { + rows[i] = Math.min(rows[i], matrix[i][j]); + cols[j] = Math.max(cols[j], matrix[i][j]); + } + } + const ans = []; + for (let i = 0; i < m; ++i) { + for (let j = 0; j < n; j++) { + if (rows[i] === cols[j]) { + ans.push(rows[i]); + } + } + } + return ans; +}; +``` + #### Rust ```rust diff --git a/solution/1300-1399/1380.Lucky Numbers in a Matrix/README_EN.md b/solution/1300-1399/1380.Lucky Numbers in a Matrix/README_EN.md index 208a413bd3fa6..541f37076eb83 100644 --- a/solution/1300-1399/1380.Lucky Numbers in a Matrix/README_EN.md +++ b/solution/1300-1399/1380.Lucky Numbers in a Matrix/README_EN.md @@ -195,6 +195,36 @@ function luckyNumbers(matrix: number[][]): number[] { } ``` +#### JavaScript + +```js +/** + * @param {number[][]} matrix + * @return {number[]} + */ +var luckyNumbers = function (matrix) { + const m = matrix.length; + const n = matrix[0].length; + const rows = new Array(m).fill(1 << 30); + const cols = new Array(n).fill(0); + for (let i = 0; i < m; ++i) { + for (let j = 0; j < n; j++) { + rows[i] = Math.min(rows[i], matrix[i][j]); + cols[j] = Math.max(cols[j], matrix[i][j]); + } + } + const ans = []; + for (let i = 0; i < m; ++i) { + for (let j = 0; j < n; j++) { + if (rows[i] === cols[j]) { + ans.push(rows[i]); + } + } + } + return ans; +}; +``` + #### Rust ```rust diff --git a/solution/1300-1399/1380.Lucky Numbers in a Matrix/Solution.js b/solution/1300-1399/1380.Lucky Numbers in a Matrix/Solution.js new file mode 100644 index 0000000000000..35010e1bfadd7 --- /dev/null +++ b/solution/1300-1399/1380.Lucky Numbers in a Matrix/Solution.js @@ -0,0 +1,25 @@ +/** + * @param {number[][]} matrix + * @return {number[]} + */ +var luckyNumbers = function (matrix) { + const m = matrix.length; + const n = matrix[0].length; + const rows = new Array(m).fill(1 << 30); + const cols = new Array(n).fill(0); + for (let i = 0; i < m; ++i) { + for (let j = 0; j < n; j++) { + rows[i] = Math.min(rows[i], matrix[i][j]); + cols[j] = Math.max(cols[j], matrix[i][j]); + } + } + const ans = []; + for (let i = 0; i < m; ++i) { + for (let j = 0; j < n; j++) { + if (rows[i] === cols[j]) { + ans.push(rows[i]); + } + } + } + return ans; +};