1.题目
2.思路 这个题 有一个点就是不能将零作为最小值 因为国王不重视他们 思路和前面一个词类似 我记得前面那个题是计算单词出现次数最多的 这个题大同小异 基本的思想是类似的 我们先把26个字母找一个整形数组储存起来 用字母下标表示每一个字母 然后我们可以利用 Arrays.sort(int [] a)这个进行对数组排序 注意这个是从小到大排列的 然后数组0我们是不能把他当做最小值的 我们把他筛选出来 再利用一个for()循环 找到最小值(除了0)
3.代码
import java.util.Arrays;
import java.util.Scanner;
public class J71 {
public static void main(String[] args) {
Scanner scan =new Scanner(System.in);
String str=scan.nextLine();
int [] a=new int[26];//储存每一球队的获胜次数
int min=0;
for(int i=0;i<str.length();i++) {
a[str.charAt(i)-97]++;//胜的场数累加
}
Arrays.sort(a);//排序
for(int i=0;i<a.length;i++) {
if(a[i]!=0) {//找到最小值(除了0)
min=a[i];
break;
}
}
System.out.println(a[a.length-1]-min);
}
}
4.总结 注意审题