反转问题1

给一个n*m的01矩阵(每个元素非0即1),你的任务是把尽量少的0变成1,使得每个元素的上、下、左、右的元素(如果存在的话)之和均为偶数。比如

0 0 0                    0 1 0   所示的矩阵至少要把3个0变成1,才能保证其为偶数矩阵

1 0 0     -------->  1 0 1

0 0 0                    0 1 0 


首先对第一行进行枚举,有2^N种可能。接下来根据第一行可以完全计算出第二行,根据第二行又能计算出第三行,依次类推,这样,总时间复杂度即可降为O(2^n*n^2)

你可能感兴趣的:(反转问题1)