엔지니어 게시판
LeetCode 솔루션 분류

[10/31] 766. Toeplitz Matrix

컨텐츠 정보

본문

Easy
2982148Add to ListShare

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.

 

Example 1:

Input: matrix = [[1,2,3,4],[5,1,2,3],[9,5,1,2]]
Output: true
Explanation:
In the above grid, the diagonals are:
"[9]", "[5, 5]", "[1, 1, 1]", "[2, 2, 2]", "[3, 3]", "[4]".
In each diagonal all elements are the same, so the answer is True.

Example 2:

Input: matrix = [[1,2],[2,2]]
Output: false
Explanation:
The diagonal "[1, 2]" has different elements.

 

Constraints:

  • m == matrix.length
  • n == matrix[i].length
  • 1 <= m, n <= 20
  • 0 <= matrix[i][j] <= 99

 

Follow up:

  • What if the matrix is stored on disk, and the memory is limited such that you can only load at most one row of the matrix into the memory at once?
  • What if the matrix is so large that you can only load up a partial row into the memory at once?
Accepted
255,565
Submissions
371,295
태그

관련자료

댓글 1

학부유학생님의 댓글

  • 익명
  • 작성일
class Solution:
    def isToeplitzMatrix(self, matrix: List[List[int]]) -> bool:
        ROW, COL = len(matrix), len(matrix[0])
        
        for col in range(COL):
            r, c = 0, col
            num = matrix[r][c]
            while r<ROW and c<COL:
                if num != matrix[r][c]: return False
                
                c += 1
                r += 1
        
        for row in range(ROW):
            r, c = row, 0
            num = matrix[r][c]
            while r<ROW and c<COL:
                if num != matrix[r][c]: return False
                
                c += 1
                r += 1
        
        
        return True
전체 396 / 4 페이지
번호
제목
이름

최근글


인기글


새댓글


Stats


  • 현재 접속자 221 명
  • 오늘 방문자 466 명
  • 어제 방문자 5,793 명
  • 최대 방문자 11,134 명
  • 전체 회원수 1,106 명
알림 0