Ctrl K

Зеркальные строки или столбцы

Средняя
Дана матрица grid из нулей и единиц. Строка или столбец называется зеркальным, если читается одинаково слева направо и справа налево (сверху вниз и снизу вверх). За одну замену можно поменять значение любой клетки на противоположное. Верните наименьшее число замен, после которых **либо все строки**, **либо все столбцы** станут зеркальными.
Пример 1
grid=[[1, 1, 0], [0, 0, 1], [1, 0, 1]] → 2

Чтобы зеркальными стали все строки, достаточно 2 замен (в первых двух строках). Столбцам понадобилось бы 2 замены тоже — ответ 2.

Пример 2
grid=[[0, 1, 1, 0], [1, 1, 0, 0]] → 2

Строкам нужны 2 замены (вторая строка), столбцам — 2 (в двух столбцах верх и низ различаются). Минимум 2.

Пример 3
grid=[[1], [0], [0]] → 0

Каждая строка из одной клетки уже читается одинаково в обе стороны.

Ограничения
  • 1 ≤ len(grid) · len(grid[0]) ≤ 2 · 10⁵
  • Все строки одной длины
  • grid[i][j] — 0 или 1
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиТри в ряд до упора СредняяОпрокинутый ящик с камнями СредняяЗеркальное табло с единицами по четыре СредняяЗеркало и негатив ЛёгкаяСколько клеток зальёт вода Сложная
загружаем Python…
Вход
grid=[[1, 1, 0], [0, 0, 1], [1, 0, 1]]
Ожидается
2

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 80 тестов на сервере, включая скрытые.