这道题需要的思维就是最小循环节其实就是不同字母出现的次数,因为只要是相同的字母,都可以让他变成同一个循环节。
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 int[] a = new int[100]; String s = in.next(); int cnt = 0; char[] ch = s.toCharArray(); for(char c:ch){ a[c-'A']++; } for(int b:a){ if(b>0){ cnt++; } } System.out.print(cnt); } }