Given an m x n matrix, return true if the matrix is Toeplitz. Otherwise, return false.
A matrix is Toeplitz if every diagonal from top-left to bottom-right has the same elements.
という問に対する回答のコード
python
1class Solution: 2 def isToeplitzMatrix(self, matrix: List[List[int]]) -> bool: 3 4 return all(r == 0 or c == 0 or matrix[r-1][c-1] == val 5 for r, row in enumerate(matrix) 6 for c, val in enumerate(row))
に置いて、return以下の書き方がいまいちわかりません。内容は理解できます。特に、
for r, row in enumerate(matrix) for c, val in enumerate(row))
と表記できるのはなぜですか。自分であれば、
return all(r == 0 or c == 0 or (for r, row in enumerate(matrix): for c, val in enumerate(row): matrix[r-1][c-1] == val ))
のように書いてしまいそうです。(間違っていますが)
ご教授お願いします。
回答3件
あなたの回答
tips
プレビュー