首页 > 其他 > 详细

Codeforces Round #555 (Div. 3)

时间:2019-07-18 09:48:24      阅读:64      评论:0      收藏:0      [点我收藏+]

Codeforces Round #555 (Div. 3)

G

题意:有一个 \(n \cdot m\) 的 01 矩阵,每次操作是每行或每列 01 翻转,问是否存在一个解使得矩阵中的元素是非降的。 \(n,m \le 200\)

key:结论

思路是 tutorial 中牛逼的老哥给的

考虑最终解的情况:当 \(n \ge 2\) 时,要么第一行全 0 ,要么最后一行全 1 。所以对于给的矩阵,可以先把它变成这样(也就是说可以枚举对列的情况,只有两个:把第一行变全 0 或者把最后一行变全 1)。此时只需要看看行的情况就行,这个是非常简单的。

仔细思考发现其实这个是充要条件。因为如果列的情况有第三种并且得到一个合法解,那么行的操作也一定会使要么第一行全 0,要么最后一行全 1,实际上造成的影响是一样的。

并且 n=1 是平凡的,并不要特判。

Codeforces Round #555 (Div. 3)

原文:https://www.cnblogs.com/dqsssss/p/11204688.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!