题解 | #名字的漂亮度#

名字的漂亮度

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

贪心,想让名字的漂亮度最高,就是希望名字中出现频数最高的字母的漂亮度最高。记录每个字母出现的次数,排序后赋予每个字母漂亮度即可。

import java.util.Arrays;
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextInt()) {
            int n = in.nextInt();
            for (int i = 0; i < n; i++) {
                String name = in.next();
                int[] count = new int[26];
                for (char ch : name.toCharArray()) {
                    count[ch - 'a']++;
                }
                
                // 排序
                Arrays.sort(count);
                int ans = 0;
                for (int k = 0; k < 26; k++) {
                    // 按照排序给予 1-26 的漂亮度
                    ans += count[k] * (k + 1);
                }
                System.out.println(ans);
            }
        }
    }
}

全部评论

相关推荐

07-07 11:33
江南大学 Java
已经在暑假实习了&nbsp;,没有明确说有hc,纠结实习到八月份会不会有点影响秋招毕竟感觉今年好多提前批
程序员小白条:92的话准备提前批,其他没必要,没面试机会的,而且你要准备充分,尤其八股和算法题
点赞 评论 收藏
分享
点赞 评论 收藏
分享
零OFFER战士:另一个版本查看图片
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-07 13:46
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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