import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt(); // 读取数列长度
int[] f = new int[10]; // 初始化数组f
int ans = Integer.MAX_VALUE; // 初始化答案为最大整数值
// 遍历输入的每个数字字符串
for (int i = 1; i <= n; i++) {
String s = scanner.next();
int lastDigit = s.charAt(s.length() - 1) - '0'; // 获取字符串的最后一个字符的数字
int firstDigit = s.charAt(0) - '0'; // 获取字符串的第一个字符的数字
// 更新数组f
f[lastDigit] = Math.max(f[lastDigit], f[firstDigit] + 1);
}
// 找出最小的f值,即最长的接龙数列
for (int i = 0; i < 10; i++) {
ans = Math.min(ans, n - f[i]);
}
System.out.println(ans); // 输出答案
scanner.close(); // 关闭scanner
}
}```
0 回复
0 转发
0 喜欢
6 阅读



