E. Задача про матрицу
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вам дана матрица $$$a$$$, состоящая из $$$n$$$ строк и $$$m$$$ столбцов. Каждый элемент матрицы равен $$$0$$$ или $$$1$$$.

Вы можете выполнять следующую операцию любое количество раз (возможно, ни одного): выбрать элемент матрицы и заменить его на $$$0$$$ или $$$1$$$.

Также вам даны два массива $$$A$$$ и $$$B$$$ (длиной $$$n$$$ и $$$m$$$ соответственно). После выполнения операций матрица должна удовлетворять следующим условиям:

  1. количество единиц в $$$i$$$-й строке матрицы должно быть ровно $$$A_i$$$ для каждого $$$i \in [1, n]$$$.
  2. количество единиц в $$$j$$$-м столбце матрицы должно быть ровно $$$B_j$$$ для каждого $$$j \in [1, m]$$$.

Вычислите минимальное количество операций, которое вам нужно выполнить.

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

Первая строка содержит два целых числа $$$n$$$ и $$$m$$$ ($$$2 \le n, m \le 50$$$).

Затем следуют $$$n$$$ строк. $$$i$$$-я из них содержит $$$m$$$ целых чисел $$$a_{i,1}, a_{i,2}, \dots, a_{i,m}$$$ ($$$0 \le a_{i,j} \le 1$$$).

Следующая строка содержит $$$n$$$ целых чисел $$$A_1, A_2, \dots, A_n$$$ ($$$0\le A_i\le m$$$).

Следующая строка содержит $$$m$$$ целых чисел $$$B_1, B_2, \dots, B_m$$$ ($$$0\le B_i\le n$$$).

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

Выведите одно целое число — минимальное количество операций, которые вам нужно выполнить, или -1, если это невозможно.

Примеры
Входные данные
3 3
0 0 0
0 0 0
0 0 0
1 1 1
1 1 1
Выходные данные
3
Входные данные
3 3
1 1 1
1 1 1
1 1 1
3 2 1
1 2 3
Выходные данные
3
Входные данные
2 2
0 0
0 0
1 2
0 1
Выходные данные
-1