Matrix Problem
题意翻译
给出一个 $n\times m$ 的 0/1 矩阵,可以反转若干个位置,再给出 $a_n,b_m$,要求最终第 $i$ 行恰有 $a_i$ 个 $1$,第 $j$ 列恰有 $b_j$ 个 $1$,问最少需要反转多少个位置,无解输出 `-1`。$n,m\le 50$。
题目描述
You are given a matrix $ a $ , consisting of $ n $ rows by $ m $ columns. Each element of the matrix is equal to $ 0 $ or $ 1 $ .
You can perform the following operation any number of times (possibly zero): choose an element of the matrix and replace it with either $ 0 $ or $ 1 $ .
You are also given two arrays $ A $ and $ B $ (of length $ n $ and $ m $ respectively). After you perform the operations, the matrix should satisfy the following conditions:
1. the number of ones in the $ i $ -th row of the matrix should be exactly $ A_i $ for every $ i \in [1, n] $ .
2. the number of ones in the $ j $ -th column of the matrix should be exactly $ B_j $ for every $ j \in [1, m] $ .
Calculate the minimum number of operations you have to perform.
输入输出格式
输入格式
The first line contains two integers $ n $ and $ m $ ( $ 2 \le n, m \le 50 $ ).
Then $ n $ lines follow. The $ i $ -th of them contains $ m $ integers $ a_{i,1}, a_{i,2}, \dots, a_{i,m} $ ( $ 0 \le a_{i,j} \le 1 $ ).
The next line contains $ n $ integers $ A_1, A_2, \dots, A_n $ ( $ 0\le A_i\le m $ ).
The next line contains $ m $ integers $ B_1, B_2, \dots, B_m $ ( $ 0\le B_i\le n $ ).
输出格式
Print one integer — the minimum number of operations you have to perform, or -1 if it is impossible.
输入输出样例
输入样例 #1
3 3
0 0 0
0 0 0
0 0 0
1 1 1
1 1 1
输出样例 #1
3
输入样例 #2
3 3
1 1 1
1 1 1
1 1 1
3 2 1
1 2 3
输出样例 #2
3
输入样例 #3
2 2
0 0
0 0
1 2
0 1
输出样例 #3
-1