题解 | #名字的漂亮度#

名字的漂亮度

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

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

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt(); //字符串个数
        //输入处理,接收回车符否则会计算数字n的漂亮度
        in.nextLine();
        String[] strArr = new String[n];
        for (int i = 0; i < n; i++) {
            strArr[i] = in.nextLine();
            System.out.println(computeBeautify(strArr[i]));
        }
    }

    public static int computeBeautify(String string) {
        // TODO
        int beautify = 0;
        //统计各个字母出现的次数
        int[] nums = new int[26];
        //将字符串转小写
        String lowStr = string.toLowerCase();
        for (int i = 0; i < lowStr.length(); i++) {
            nums[string.charAt(i) - 'a']++;
        }
        //按字母出现次数升序排序
        Arrays.sort(nums);
        //计算名字的漂亮度
        for (int i = 0; i < 26; i++) {
            beautify += nums[i] * (i + 1);
        }
        return beautify;
    }
}

全部评论

相关推荐

03-01 21:45
中北大学 Python
孤蓝长空:请你说一下为什么你用websocket而不是http,请你说一下什么是rpc,为什么用rpc,你的rpc的传输协议是JSON,xml还是什么 请你描述一下你的鉴权流程(完整的) 我问的是第二个项目,随便问的哈哈哈
开工第一帖
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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