#include <cstdio>
#include <algorithm>
using namespace std;

const int max_n = 21;
int W, H;

char farm[max_n][max_n];
const int dx[4] = {-1, 0, 1, 0};
const int dy[4] = {0, -1, 0, 1};

void dfs(int x, int y, char t){
    farm[x][y] = '!';
    for(int i = 0; i < 4; i++){
        int xx =  x+dx[i]; int yy = y+dy[i];
        if(xx >= 0 && xx < H && yy >= 0 && yy < W && farm[xx][yy] == t){
            dfs(xx, yy , t);
        }
    }
}

void solve(){
    int ans = 0;

    for(int i = 0; i < H; i++){
        for(int j = 0; j < W; j++){
            if(farm[i][j] != '!'){
                dfs(i,j,farm[i][j]);
                ++ans;
            }
        }
    }

    printf("%d\n", ans);
}

int main(){
    while(scanf("%d%d", &W, &H) > 0 && H && W){
        getchar();
        for(int i = 0; i < H; i++){
            scanf("%s", farm[i]);
        }
        solve();
    }
    return 0;
}