スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

AOJ 0118 Property Distribution

蟻本に載ってたPOJ2386とだいたい同じ。
同じグループを消してく。

int H,W;
char map[100][100];

void grouping(int h,int w,char f);

int main(){
while(1){
cin >> H >> W;
if(H==0&&W==0)break;

for(int i=0;i for(int j=0;j cin >> map[i][j];
}
}
int x=0;
for(int i=0;i for(int j=0;j if(map[i][j]!='.'){
x++;
grouping(i,j,map[i][j]);
}
}
}
cout << x << endl;
}
}

void grouping(int h,int w,char f){
map[h][w] = '.';
if(h-1>=0&&map[h-1][w]==f){
grouping(h-1,w,f);
}
if(h+1 grouping(h+1,w,f);
}
if(w-1>=0&&map[h][w-1]==f){
grouping(h,w-1,f);
}
if(w+1 grouping(h,w+1,f);
}
}


コメントの投稿

非公開コメント

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。