//这个题目的意思是输入一个字符的矩阵..只有X和空字符
//.然后把空字符用后面的填满..问最后有多少个空.
//比如
//XXBBXX
//XBBXXX
//XXXXXX
//那么把空格拿去了以后就变成
//XXXX
//XXXX
//XXXXXX
//就存在四个空格..
//如果去模拟变化的话可能要麻烦一点.其实可以直接计算每行空格的长度就可以了.
//因为必然每行的空格是最少空格的那个然后减去每一行的值得总和
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<iostream>
#include<string.h>
#include<vector>
const int inf = 0x3f3f3f;
using namespace std;
int main()
{
bool vis[100];
int n,value[100];
char test[100][100],h;
while(scanf("%d",&n) && n!= 0)
{
scanf("%c",&h);
for(int i = 1 ; i <= n ; i++)
{
gets(test[i]);
}
for(int i = 1 ; i <= n ; i++)
{
value[i] = 0;
for(int j = 0 ; j < 25 ; j++)
{
if(test[i][j] == 'X')
value[i]++;
}
}
memset(vis,0,sizeof(vis));
int maxx = - inf;
for(int i = 1 ; i <= n ; i++)
{
if( maxx < value[i] )
maxx = value[i];
}
int ans = 0;
for(int i = 1 ; i <= n ; i++)
{
ans += maxx - value[i];
}
printf("%d\n",ans);
}
}
//.然后把空字符用后面的填满..问最后有多少个空.
//比如
//XXBBXX
//XBBXXX
//XXXXXX
//那么把空格拿去了以后就变成
//XXXX
//XXXX
//XXXXXX
//就存在四个空格..
//如果去模拟变化的话可能要麻烦一点.其实可以直接计算每行空格的长度就可以了.
//因为必然每行的空格是最少空格的那个然后减去每一行的值得总和
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<iostream>
#include<string.h>
#include<vector>
const int inf = 0x3f3f3f;
using namespace std;
int main()
{
bool vis[100];
int n,value[100];
char test[100][100],h;
while(scanf("%d",&n) && n!= 0)
{
scanf("%c",&h);
for(int i = 1 ; i <= n ; i++)
{
gets(test[i]);
}
for(int i = 1 ; i <= n ; i++)
{
value[i] = 0;
for(int j = 0 ; j < 25 ; j++)
{
if(test[i][j] == 'X')
value[i]++;
}
}
memset(vis,0,sizeof(vis));
int maxx = - inf;
for(int i = 1 ; i <= n ; i++)
{
if( maxx < value[i] )
maxx = value[i];
}
int ans = 0;
for(int i = 1 ; i <= n ; i++)
{
ans += maxx - value[i];
}
printf("%d\n",ans);
}
}