Oj.Nbdp.Net
初赛题库
问题
状态
排名
团队
题解
课程
Login
问题 5671 --快乐的粉刷匠
5671: 快乐的粉刷匠
警告!
题目
状态
题解
题目描述
小爱是一位快乐的粉刷匠,她现在需要粉刷一块包含 $n\times m$ 小格子的墙面, 每个格子一开始都是白色的。 小爱可以进行以下两种操作: + 把某一行全部染成红色$R$或者黑色$B$ 。 + 把某一列全部染成红色$R$或者黑色$B$ 。 每次涂到一个格子时,无论这个格子之前是否被染过色,都会被覆盖成当前的颜色。 经过一些操作后,小爱制作完成了一个只有红色与黑色的染色图,她非常得意地拿给小艾展示。小艾并不关心这幅图的美观度,她只想知道这幅图最少几步就能得到,但她不能一下子看出,所以来寻求你的帮助。 给出一幅染色图, 输出最少需要几步可以画成这幅图。 如果小爱在欺骗小艾,这幅图无法通过以上操作获得,则输出 $−1$ .
输入
第一行两个正整数 $n,m$,分别表示染色图的长和宽。 接下来 $n$ 行, 每行一个长度为$m$且只由 $R,B$ 构成的字符串, 用来描述整幅染色图。
输出
输出一个正整数表示答案。
样例输入输出
输入#1
复制
2 8 BBRRRBRB BBRRRRRB
输出#1
复制
6
输入#2
复制
2 3 RRB BRR
输出#2
复制
-1
提示
+ 对于 $20\%$ 的数据,保证 $1\leq n,m\leq 3$; + 对于 $40\%$ 的数据,保证$1\le n,m\le 5$; + 对于 $60\%$ 的数据,保证$1\le n,m\le 100$; + 对于另外$20\%$ 的数据,保证$1\le n,m\le 3000$;(且若小爱没有欺骗,那么最少的步数应是 $4513$ 步。) + 对于 $100\%$ 的数据,保证$1\le n,m\le 3000$; 样例1说明:我们可以先把第一行涂成 R,然后把第六列涂成 B,然后把第二行涂成 R,最后把第一、二、八列涂成B
发表题解
序号
标题
作者
发表时间
费用
订购数
操作
题目信息
提交
难度
提高+/省选-
标签
数学与数论
点击显示
if ($pr_flag) { ?>
递交数
1
已通过
1
} ;?>
通过率
100%
时间限制
1 秒
内存限制
512 MB
来源
YACS2022年1月月赛甲组
收藏
标签云
模拟
数学与数论
动态规划
贪心
字符串
排序
枚举
数组与串
深搜
高精度
循环结构
递推
递归
二分三分
宽搜
背包
质数
线段树
分治
N进制
图论
队列
最短路
堆
树
并查集
栈
状态压缩
分支结构
几何
博弈论
生成树
顺序结构
离散化
hash表
位运算
单调队列
树状数组
KMP
字典树
二分图
数学期望
AC自动机
树链剖分
差分约束
数位动态规划
函数与过程
网络流
单调栈
前缀和