import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
public class Main {
static char grid[][];
static boolean wasVisited[][];
public static void main(String[] args) throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String input;
StringBuilder sb=new StringBuilder(1000);
int testcase=0;
while((input=br.readLine())!=null)
{
String s[]=input.split(" +");
int row=Integer.parseInt(s[0]);
int column=Integer.parseInt(s[1]);
if(row==0 && column==0)
break;
testcase++;
grid=new char[row][column];
wasVisited=new boolean[row][column];
for (int i = 0; i < row; i++) {
input=br.readLine().trim();
for (int j = 0; j rowlimit || column>columnlimit || row<0 || column<0 || wasVisited[row][column]==true)
return 0;
if(grid[row][column]==c)
{
count++;
grid[row][column]='.';
wasVisited[row][column]=true;
count+=floodfill(row-1,column,c,rowlimit,columnlimit);
count+=floodfill(row,column-1,c,rowlimit,columnlimit);
count+=floodfill(row,column+1,c,rowlimit,columnlimit);
count+=floodfill(row+1,column,c,rowlimit,columnlimit);
return count;
}
return 0;
}
}
class Hole implements Comparable
{
char name;
int count;
public Hole(char n,int c)
{
name=n;
count=c;
}
@Override
public int compareTo(Hole h1) {
if(this.count>h1.count)
return -1;
else if(this.count
0 comments: