Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 주어진 행렬이 Toeplitz Matrix인지 확인하는 프로그램

<시간/>

행렬 M이 있다고 가정하고 그것이 Toeplitz 행렬인지 여부를 확인해야 합니다. 우리가 알다시피 행렬은 왼쪽에서 오른쪽으로 내려가는 모든 대각선이 같은 값을 가질 때 Toeplitz라고 합니다.

따라서 입력이 다음과 같으면

7 2 6
3 7 2
5 3 7

그러면 출력이 True가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 마지막 행을 제외한 각 행 i에 대해 다음을 수행합니다.
    • 마지막 열을 제외한 각 열에 대해 다음을 수행합니다.
      • 행렬[i, j]가 행렬[i+1, j+1]과 같지 않으면
        • 거짓을 반환
  • 참 반환

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

예시

class Solution:
   def solve(self, matrix):
      for i in range(len(matrix)-1):
         for j in range(len(matrix[0])-1):
            if matrix[i][j]!=matrix[i+1][j+1]:
               return False
      return True
ob = Solution()
matrix = [ [7, 2, 6], [3, 7, 2], [5, 3, 7]]
print(ob.solve(matrix))

입력

[[7, 2, 6],
[3, 7, 2],
[5, 3, 7]]

출력

True