#1664. 2668. [cqoi2012]交换棋子

2668. [cqoi2012]交换棋子

#2668. [cqoi2012]交换棋子

题目描述

有一个 nm 列的黑白棋盘,你每次可以交换两个相邻格子(相邻是指有公共边或公共顶点)中的棋子,最终达到目标状态。要求第 i 行第 j 列的格子只能参与 _m i,j_次交换。

输入格式

第一行包含两个整数 nm (1<= n , m <=20)。以下 n 行为初始状态,每行为一个包含 m 个字符的01串,其中0表示黑色棋子,1表示白色棋子。以下 n 行为目标状态,格式同初始状态。以下 n 行每行为一个包含 m 个0~9数字的字符串,表示每个格子参与交换的次数上限。

输出格式

输出仅一行,为最小交换总次数。如果无解,输出-1。

样例

样例输入

3 3  

110  

000  

001  

000  

110  

100  

222  

222  

222  

样例输出

4

数据范围与提示