偶数矩阵 uva11464

给你一个 n * n 的 01 矩阵,现在你的任务是将这个矩阵中尽量少的 0 转化为 1 ,使得每个数的上下左右四个相邻的数加起来是偶数。求最少的转化个数。

https://www.cnblogs.com/wuhenqs/p/3242068.html

http://blog.csdn.net/mikasa3/article/details/52862470

我们可以只枚举第一排的0。因为第一排的元素只受第一排和第二排元素的影响。所以第一排元素如果确定下来了,第二排的元素实际上是可以唯一确定的。而第二排的元素又只受第一排、第二排、第三排元素的影响,因此确定了第一排和第二排的元素后,第三排的元素也是确定的。以此类推,如果前n排元素确定了,那么第n + 1排元素就可以确定。所以我们可以只需要枚举第一排哪些0需要变为1,然后依次计算完每一排元素,最后判断一下最后一排元素是符合要求就可以了。用二进制方式映射10进制数枚举即可。在处理上,可以假设第一排的元素都是0,如果枚举到某种情况发现第一排某个元素为0而原来的矩阵上对应位置为1,直接判不符合条件即可。

http://blog.csdn.net/firstlucker/article/details/46663427

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值