#include #define ll long long using namespace std; int n,m; int A[2500]; int B[2500]; vectoradj[2500]; bool vis[2500]; char f[50][50]; int dy[4]={-1,0,1,0}; int dx[4]={0,1,0,-1}; bool dfs(int a) { vis[a]=true; for(auto b:adj[a]) { if(B[b]==-1||!vis[B[b]]&&dfs(B[b])) { A[a]=b; B[b]=a; return true; } } return false; } int main() { // freopen("chocolate.in","r",stdin); // freopen("chocolate.out","w",stdout); cin.tie(0); ios::sync_with_stdio(false); cin>>n>>m; int cntw=0; int cntb=0; for (int i=0;i>f[i][j]; if(f[i][j]=='w') cntw++; else if(f[i][j]=='b') cntb++; } } for(int i=0;i=n||x<0||x>=m) continue; if(f[y][x]=='w') { adj[i*m+j].push_back(y*m+x); } } } } } int res=0; memset(A,-1,sizeof(A)); memset(B,-1,sizeof(B)); for(int i=0;i