#include <stdio.h>
#include <string.h>
#define N 100000
int max(int a,int b)
{
if(a>b)
return a;
else
return b;
};
int main()
{
int n;
scanf("%d",&n);
int count[10]={0};//从0到9初始化次数为0
int ans=0;
for(int i=0; i<n ; i++)
{
char array[N];//存放每个数字
scanf("%s",array);
int head=array[0]-'0';//标记数组的首位
int lenth=strlen(array);//数组长度
int tail=array[lenth-1]-'0';//数组的末位
//update
count[tail] = max(count[head]+1 ,count[tail] );//求接上数列后于不接数列的最大值
ans = max(ans ,count[tail]);
}
int part = n-ans;//片段
printf("%d",part);
return 0;
}