2319. 判斷矩陣是否是一個(gè) X 矩陣
如果一個(gè)正方形矩陣滿足下述 全部 條件吁津,則稱之為一個(gè) X 矩陣 :
矩陣對(duì)角線上的所有元素都 不是 0
矩陣中所有其他元素都是 0
給你一個(gè)大小為 n x n 的二維整數(shù)數(shù)組 grid 巨朦,表示一個(gè)正方形矩陣。如果 grid 是一個(gè) X 矩陣 ,返回 true ;否則,返回 false 。
輸入:grid = [[2,0,0,1],[0,3,1,0],[0,5,2,0],[4,0,0,2]]
輸出:true
解釋:矩陣如上圖所示。
X 矩陣應(yīng)該滿足:綠色元素(對(duì)角線上)都不是 0 锉屈,紅色元素都是 0 。
因此垮耳,grid 是一個(gè) X 矩陣颈渊。
class Solution:
def checkXMatrix(self, grid: List[List[int]]) -> bool:
n = len(grid)
# 對(duì)角線元素
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
- 解題思路
對(duì)角線元素索引[row, col]的規(guī)律
斜向下對(duì)角線元素索引:row = col
斜向上對(duì)角線元素索引:row + col = n-1(n x n的矩陣)