# Solving Leetcode Interviews in Seconds with AI: Check if Matrix Is X-Matrix


	# Introduction
	In this blog post, we will explore how to solve the LeetCode problem "2319" using AI. LeetCode is a popular platform for preparing for coding interviews, and with the help of AI tools like [Chatmagic](https://www.chatmagic.app), we can generate solutions quickly and efficiently - helping you pass the interviews and get the job offer without having to study for months.

	# Problem Statement
	> A square matrix is said to be an X-Matrix if both of the following conditions hold:  All the elements in the diagonals of the matrix are non-zero. All other elements are 0.  Given a 2D integer array grid of size n x n representing a square matrix, return true if grid is an X-Matrix. Otherwise, return false.   Example 1:   Input: grid = [[2,0,0,1],[0,3,1,0],[0,5,2,0],[4,0,0,2]] Output: true Explanation: Refer to the diagram above.  An X-Matrix should have the green elements (diagonals) be non-zero and the red elements be 0. Thus, grid is an X-Matrix.  Example 2:   Input: grid = [[5,7,0],[0,3,1],[0,5,0]] Output: false Explanation: Refer to the diagram above. An X-Matrix should have the green elements (diagonals) be non-zero and the red elements be 0. Thus, grid is not an X-Matrix.    Constraints:  n == grid.length == grid[i].length 3 <= n <= 100 0 <= grid[i][j] <= 105  

	# Explanation
	Here's the solution to determine if a square matrix is an X-Matrix, following the requested format:

*   **High-Level Approach:**
    *   Iterate through each element of the grid.
    *   Check if diagonal elements are non-zero and non-diagonal elements are zero.
    *   Return `False` immediately if any condition is violated; otherwise, return `True` after checking all elements.

*   **Complexity Analysis:**
    *   Runtime Complexity: O(n^2), where n is the size of the grid.
    *   Storage Complexity: O(1).

	
	# Code
	```python
	def isXMatrix(grid):
    n = len(grid)
    for i in range(n):
        for j in range(n):
            if i == j or i + j == n - 1:
                if grid[i][j] == 0:
                    return False
            else:
                if grid[i][j] != 0:
                    return False
    return True
	```
			
