LeetCode solutions

2722. Prime In Diagonal

My accepted Python solution to LeetCode problem 2722, Prime In Diagonal, running in 39ms.

  • Difficulty: Easy
  • Python
  • Runtime 39ms
  • Memory 30.5MB

Read the problem on LeetCode View on GitHub

Python

Accepted on LeetCode — runtime 39ms, memory 30.5MB, accepted 2026-01-01.

python
class Solution:
    def diagonalPrime(self, nums: List[List[int]]) -> int:
        def is_prime(n):
            if n < 2:
                return False
            if n == 2:
                return True
            if n % 2 == 0:
                return False
            for i in range(3, int(n**0.5) + 1, 2):
                if n % i == 0:
                    return False
            return True
        
        n = len(nums)
        max_prime = 0
        
        for i in range(n):
            # Main diagonal
            if is_prime(nums[i][i]):
                max_prime = max(max_prime, nums[i][i])
            # Anti-diagonal
            if is_prime(nums[i][n - i - 1]):
                max_prime = max(max_prime, nums[i][n - i - 1])
        
        return max_prime

Source