diff --git a/solution/2600-2699/2614.Prime In Diagonal/README.md b/solution/2600-2699/2614.Prime In Diagonal/README.md index ac7d02d3a9bdb..6ca582e98e373 100644 --- a/solution/2600-2699/2614.Prime In Diagonal/README.md +++ b/solution/2600-2699/2614.Prime In Diagonal/README.md @@ -194,6 +194,36 @@ func isPrime(x int) bool { } ``` +#### TypeScript + +```ts +function diagonalPrime(nums: number[][]): number { + const n = nums.length; + let ans = 0; + for (let i = 0; i < n; ++i) { + if (isPrime(nums[i][i])) { + ans = Math.max(ans, nums[i][i]); + } + if (isPrime(nums[i][n - i - 1])) { + ans = Math.max(ans, nums[i][n - i - 1]); + } + } + return ans; +} + +function isPrime(x: number): boolean { + if (x < 2) { + return false; + } + for (let i = 2; i <= Math.floor(x / i); ++i) { + if (x % i === 0) { + return false; + } + } + return true; +} +``` + #### Rust ```rust @@ -231,6 +261,40 @@ impl Solution { } ``` +#### JavaScript + +```js +/** + * @param {number[][]} nums + * @return {number} + */ +var diagonalPrime = function (nums) { + let ans = 0; + const n = nums.length; + for (let i = 0; i < n; i++) { + if (isPrime(nums[i][i])) { + ans = Math.max(ans, nums[i][i]); + } + if (isPrime(nums[i][n - i - 1])) { + ans = Math.max(ans, nums[i][n - i - 1]); + } + } + return ans; +}; + +function isPrime(x) { + if (x < 2) { + return false; + } + for (let i = 2; i * i <= x; i++) { + if (x % i === 0) { + return false; + } + } + return true; +} +``` + diff --git a/solution/2600-2699/2614.Prime In Diagonal/README_EN.md b/solution/2600-2699/2614.Prime In Diagonal/README_EN.md index 55cbebcbccb83..2c2d74a03fb2a 100644 --- a/solution/2600-2699/2614.Prime In Diagonal/README_EN.md +++ b/solution/2600-2699/2614.Prime In Diagonal/README_EN.md @@ -192,6 +192,36 @@ func isPrime(x int) bool { } ``` +#### TypeScript + +```ts +function diagonalPrime(nums: number[][]): number { + const n = nums.length; + let ans = 0; + for (let i = 0; i < n; ++i) { + if (isPrime(nums[i][i])) { + ans = Math.max(ans, nums[i][i]); + } + if (isPrime(nums[i][n - i - 1])) { + ans = Math.max(ans, nums[i][n - i - 1]); + } + } + return ans; +} + +function isPrime(x: number): boolean { + if (x < 2) { + return false; + } + for (let i = 2; i <= Math.floor(x / i); ++i) { + if (x % i === 0) { + return false; + } + } + return true; +} +``` + #### Rust ```rust @@ -229,6 +259,40 @@ impl Solution { } ``` +#### JavaScript + +```js +/** + * @param {number[][]} nums + * @return {number} + */ +var diagonalPrime = function (nums) { + let ans = 0; + const n = nums.length; + for (let i = 0; i < n; i++) { + if (isPrime(nums[i][i])) { + ans = Math.max(ans, nums[i][i]); + } + if (isPrime(nums[i][n - i - 1])) { + ans = Math.max(ans, nums[i][n - i - 1]); + } + } + return ans; +}; + +function isPrime(x) { + if (x < 2) { + return false; + } + for (let i = 2; i * i <= x; i++) { + if (x % i === 0) { + return false; + } + } + return true; +} +``` + diff --git a/solution/2600-2699/2614.Prime In Diagonal/Solution.js b/solution/2600-2699/2614.Prime In Diagonal/Solution.js new file mode 100644 index 0000000000000..ff8ce7c518c53 --- /dev/null +++ b/solution/2600-2699/2614.Prime In Diagonal/Solution.js @@ -0,0 +1,29 @@ +/** + * @param {number[][]} nums + * @return {number} + */ +var diagonalPrime = function (nums) { + let ans = 0; + const n = nums.length; + for (let i = 0; i < n; i++) { + if (isPrime(nums[i][i])) { + ans = Math.max(ans, nums[i][i]); + } + if (isPrime(nums[i][n - i - 1])) { + ans = Math.max(ans, nums[i][n - i - 1]); + } + } + return ans; +}; + +function isPrime(x) { + if (x < 2) { + return false; + } + for (let i = 2; i * i <= x; i++) { + if (x % i === 0) { + return false; + } + } + return true; +} diff --git a/solution/2600-2699/2614.Prime In Diagonal/Solution.ts b/solution/2600-2699/2614.Prime In Diagonal/Solution.ts new file mode 100644 index 0000000000000..6b0f295f9b07c --- /dev/null +++ b/solution/2600-2699/2614.Prime In Diagonal/Solution.ts @@ -0,0 +1,25 @@ +function diagonalPrime(nums: number[][]): number { + const n = nums.length; + let ans = 0; + for (let i = 0; i < n; ++i) { + if (isPrime(nums[i][i])) { + ans = Math.max(ans, nums[i][i]); + } + if (isPrime(nums[i][n - i - 1])) { + ans = Math.max(ans, nums[i][n - i - 1]); + } + } + return ans; +} + +function isPrime(x: number): boolean { + if (x < 2) { + return false; + } + for (let i = 2; i <= Math.floor(x / i); ++i) { + if (x % i === 0) { + return false; + } + } + return true; +}