Задачи
January 11, 2023

Матрица Тёплица

Дана матрица m x n. Верните true, если матрица является матрицей Тёплица, иначе верните false.

Матрица, в которой на всех диагоналях, параллельных главной, стоят равные элементы, является матрицей Тёплица.

Пример:

[1, 2, 3, 4],
[5, 1, 2, 3],
[9, 5, 1, 2]

Output: true

Разбор

Исходим из определения матрицы Теплица, где все элементы каждой диагонали должны быть равны. То есть для каждого элемента матрицы его верхний левый сосед (если такой существует) должен иметь такое же значение: matrix[i - 1][j - 1] == matrix[i][j].

В нашем алгоритме используем метод от противного, если мы найдем хотя бы один элемент, у которого его верхний левый сосед будет отличен, то мы сразу вернем значение false. Если мы пройдем по матрице и не найдем такого элемента, значит это матрица Теплица!

Реализация

Play-test

https://dotnetfiddle.net/FeE9kB