Изменения рейтингов за последние раунды временно удалены. Скоро они будут возвращены. ×

C. Двоичная табличка
ограничение по времени на тест
6 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

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

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

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

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

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

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

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