n×m的棋盘上某些位置放着几个车,两个车互相攻击当且仅当如下条件全部满足:
1、两车同行或同列
2、两车之间没有其他车
3、两车颜色不同
现在给你这些车的位置,请你用尽量多的颜色给他们染色,使得任意两辆车都不互相攻击。
数据范围:1<=n,m<=20;
输入
读入第一行包含两个整数n, m,表示棋盘的行数和列数
接下来n行m列,描述整个棋盘。
棋盘中共包含两类字符,字符.表示空地,字符R表示车。
输出
输出共一行,表示你能保证车不互相攻击的前提下,能用的最多的颜色数。
输入样例
3 4
.R.R
R.R.
.R.R
输出样例
2
题意翻译过来就是保证同行或同列上的车车颜色相同
#include<bits/stdc++.h>
using namespace std;
int v[25][25],ans=0,n,m;
char g[25][25];
void dfs(int x,int y)
{
v[x][y]=1;
for(int i=1