BFS 广度优先搜索 Oil Deposits

来源:互联网 发布:杭州淘宝村在哪里 编辑:程序博客网 时间:2024/05/17 23:45

以下是源码

import java.util.Scanner;public class Main {      public static void main(String[] args)       {          Scanner in=new Scanner(System.in);          while(true)          {              int m=in.nextInt();              int n=in.nextInt();              if(m==0&&n==0){return;}            int[][] arg=new int[m+2][n+2];            ///读数据            for (int i = 1; i <= m; i++) {                String s = in.next();                for (int j = 1; j <= n; j++) {                    arg[i][j] = s.charAt(j-1);                }            }            ///处理数据            int count=0;            for (int i = 1; i <= m; i++) {               for (int j = 1; j <= n; j++) {                    if(arg[i][j]==64){                        //把四周围8个都检查一遍,如果有64 就弄成别的                        find(arg,i,j);                        count++;                    }                }            }              System.out.println(count);          }       }private static void find(int[][] arg, int i, int j) {    arg[i][j]=65;    for(int p=i-1;p<=i+1;p++)    {        for(int q=j-1;q<=j+1;q++)        {            if(arg[p][q]==64)                find(arg,p,q);        }    }}}
0 0
原创粉丝点击