Олимпиадный тренинг

Задача . C. Двоичная табличка


Дана таблица из n строк и m столбцов. В каждой ячейке таблицы записано число 0 или 1. За один ход разрешается выбрать произвольную строку или столбец и инвертировать все значения, то есть 0 заменить на 1, а 1 на 0. Какого минимального количества единиц в таблице можно добиться, выполняя данные действия?

Входные данные

В первой строке входных данных записаны два числа n и m (1 ≤ n ≤ 20, 1 ≤ m ≤ 100 000) — количество строк в таблице и количество столбцов соответственно.

Следующие n строк описывают строки таблицы. Все они имеют длину m и состоят только из цифр «0» и «1».

Выходные данные

Выведите одно число — минимальное возможное количество единиц после выполнения произвольной последовательности ходов.


Примеры
Входные данныеВыходные данные
1 3 4
0110
1010
0111
2

time 6000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w642
Комментарий учителя