package 递归.递归进阶.dfs;
import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;
import java.util.Scanner;
public class 水洼数 {
static int m;
static int n;
// static char[][]a;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
m = sc.nextInt();
// a=new char[n][m];
char[][] arr = new char[n][];
for (int i = 0; i < n; i++) {
arr[i] = sc.next().toCharArray();
}
for (int i = 0; i < n; i++) {
System.out.println(arr[i]);
}
int count = 0;
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
if (arr[i][j] == 'W') {
dfs(arr, i, j);
count++;
for (int k = 0; k < n; k++) {
System.out.println(arr[k]);
}
}
}
}
System.out.println(count);
}
private static void dfs(char[][] arr,int i, int j) {
arr[i][j] = '.';
for (int k = -1; k < 2; k++) {
for (int l = -1; l < 2; l++) {
if (k == 0 && l == 0)
continue;
if (i + k >= 0 && i + k < n && j + l >= 0 && j + l < m) {
if (arr[i + k][j + l] == 'W') {
dfs(arr,i + k, j + l);
}
}
}
}
}
}
因篇幅问题不能全部显示,请点此查看更多更全内容