题解 | #名字的漂亮度#

名字的漂亮度

https://www.nowcoder.com/practice/02cb8d3597cf416d9f6ae1b9ddc4fde3

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        in.nextLine();
        for (int i = 0; i < n; i++) {
            System.out.println(getBeauti(in.nextLine()));
        }
    }

    public static int getBeauti(String input) {
        //计算字母出现次数,并排序即可
        int[] times = new int[26];
        for (int i = 0; i < input.length(); i++) {
            times[input.charAt(i) - 'a']++;
        }
        Arrays.sort(times);
        int sum = 0;
        for (int i = 26; i > 0; i--) {
            if (times[i - 1] == 0) {
                break;
            }
            sum += (i * times[i - 1]);
        }
        return sum;
    }
}

全部评论

相关推荐

后端转测开第一人:wlb不好吗 非得卷
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务