import java.util.*;

public class Main {
    public static int countBeauty(String s){
        HashMap<Character, Integer> map = new HashMap<>();
        for (int i = 0; i < s.length(); i++) {
            map.merge(s.charAt(i), 1, Integer::sum);
        }
        ArrayList<Integer> array = new ArrayList<>(map.values());
        Collections.sort(array, Collections.reverseOrder());
        int num = 26;
        int res = 0;
        for (int i = 0; i < array.size(); i++) {
            res += num-- * array.get(i);
        }
        return res;
    }
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        for (int i = 0; i < n; i++) {
            String s = in.next();
            System.out.println(countBeauty(s));
        }
    }
}

功能解析

  1. 提取 Map 值map.values() 返回 Map 中所有 value 的 Collection 视图
  2. 转换为 ArrayListnew ArrayList<>(map.values()) 创建包含所有值的可变列表
  3. 降序排序Collections.sort() 配合 Collections.reverseOrder() 实现降序排列