#include #include #include #include using namespace std; int main() { bool I = true , J = true; int n, m, ans = 0, black = 0, white = 0, ans1 = 0; string s; cin >> n >> m; int choco[50][50]; for (int i = 0; i < n; i++) { cin >> s; for (int j = 0; j < s.size(); j++) { if (s[j] == '.')choco[i][j] = 0; else if (s[j] == 'w') { choco[i][j] = 1; white++; } else if (s[j] == 'b') { choco[i][j] = 2; black++; } } } int blackT = black, whiteT = white; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (i + 1 >= n)I = false; else I = true; if (j + 1 >= n)J = false; else J = true; if (choco[i][j] + choco[i][j + 1] == 3 && J) { choco[i][j] = 0; choco[i][j + 1] = 0; ans += 100; black--; white--; } else if(choco[i][j] + choco[i + 1][j] == 3 && I) { choco[i][j] = 0; choco[i + 1][j] = 0; ans += 100; black--; white--; } } } ans += min(black, white) * 10; ans += (max(black, white) - min(black, white)); black = blackT; white = whiteT; for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if (i + 1 >= n)I = false; else I = true; if (j + 1 >= n)J = false; else J = true; if (choco[i][j] + choco[i + 1][j] == 3 && I) { choco[i][j] = 0; choco[i + 1][j] = 0; ans1 += 100; black--; white--; } else if (choco[i][j] + choco[i][j + 1] == 3 && J) { choco[i][j] = 0; choco[i][j + 1] = 0; ans1 += 100; black--; white--; } } } ans1 += min(black, white) * 10; ans1 += (max(black, white) - min(black, white)); cout << max(ans, ans1) << endl; return 0; }