#include<cstdio>
#include<algorithm>
#include<cstring>

using namespace std;
char a[105][105];
//int b[105][105];
int dx[5]={0, 1, 0, -1};
int dy[5]={1, 0, -1, 0};
int h, l;

void dfs(int row, int line, char ch)
{
        if(row<0 || row>h || line<0 || line>l || a[row][line]!=ch)
        return;
        char t = a[row][line];
        a[row][line] = ' ';
        for(int i=0; i<4; i++)
        dfs(row+dx[i], line+dy[i], t);
    
}


int main()
{

    while(~scanf("%d%d", &h, &l))
    {
        memset(a, '0', sizeof(a));
        if(h==0 && l==0) break;
        getchar();
        for(int i=0; i<h; i++)
            for(int j=0; j<l; j++)
            scanf("%s", &a[i]);

        //dfs(0,0,a[0][0]);
        int ans = 0;
        for(int i=0; i<h; i++)
        {
            for(int j=0; j<l; j++)
            {
                if(a[i][j]!=' ')
                {
                    ans++;
                    dfs(i, j, a[i][j]);
                }
            }
        }
        printf("%d\n", ans);   
    } 
}
