545. Доска с монетами

Не решаласьСредняя

Вам дали размеченную доску, содержащую N×MN \times M клеток - NN по строкам и MM по столбцам. На каждой клетке этой доски либо орлом, либо решкой вверх лежит монета. За одно действие можно взять две любые соседние по горизонтали или вертикали монеты и перевернуть их. В задаче требуется определить, за какое минимальное число действий можно так перевернуть монеты, что в результате орлы и решки будут лежать в шахматном порядке (т.е. чередоваться - таких порядков ровно 22), либо же сообщить, что это невозможно.

Формат ввода

В первой строке записаны 22 целых числа через пробел - NN и MM (1NM201 \leq N \cdot M \leq 20) - размеры доски. Далее следуют NN строк, каждая из которых содержит по MM символов - описание доски. Если очередной символ равен '0', то на этой клетке монета лежит вверх орлом, а если '1' - то решкой.

Формат вывода

Выведите ответ на задачу, либо же число 1-1, если решения нет.

Примечание

В первом тесте одна из оптимальных последовательностей переворотов такая:

001
011

010
011

010
101

Ограничения

Ограничение времени

1 с

Ограничение памяти

64 МБ

Пример 1

Ввод
2 3
001
011
Вывод
2

Пример 2

Ввод
2 2
01
00
Вывод
-1

Теги

Нужно войти, чтобы отправить решение.Войти