题解 | #名字的漂亮度#

名字的漂亮度

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

思路:
1.开一个整型数组,统计字母出现的次数,下标对应字母ASCII码
2.对字母出现次数排序
3.计算漂亮度
代码实现:

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

public class Main {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner in=new Scanner(System.in);
        while(in.hasNext()){
            int n=in.nextInt();
            for(int i=0;i<n;i++){
                String str=in.next();
                int s[]=new int[128];
                for(int j=0;j<str.length();j++){
                    s[str.charAt(j)]++;
                }
                Arrays.sort(s);
                int mul=26,sum=0;
                for(int j=s.length-1;j>=0&&s[j]>0;j--){
                    sum+=s[j]*mul;
                    mul--;
                }
                System.out.println(sum);
            }
        }
    }
}
全部评论
大佬,你知道 s[str.charAt(j)]++; 这句话是什么意思吗?
点赞 回复 分享
发布于 2022-08-18 13:43 陕西
我一开始用的Map去统计个数,后面发现有重复的漂亮度。像这类字母统计的题,还是用数组方便
1 回复 分享
发布于 2022-10-03 09:23 四川
题目说某个字符串就是说有这么一个例子,他都是小写。并不是说实际输出也都是大小写,要不然还说那句忽略大小写,少写一句toLowseCase(); 总之出题人吃屎去吧。
1 回复 分享
发布于 2022-07-17 15:18
哼,算你厉害
点赞 回复 分享
发布于 2023-08-22 21:57 陕西
请问这个sum输出之后不需要清空吗,我debug才发现错了
点赞 回复 分享
发布于 2023-08-03 09:50 广东
这个能跑通吗····我试了没跑通啊,换了其他的答案参考改了才跑通
点赞 回复 分享
发布于 2023-02-23 20:50 广东
大佬,你知道 s[str.charAt(j)]++; 这句话是什么意思吗?
点赞 回复 分享
发布于 2022-08-18 13:44 陕西
不好想到 转ASCII码计数
点赞 回复 分享
发布于 2022-07-25 19:35
不是不区分大小写吗?
点赞 回复 分享
发布于 2022-07-07 13:55
还是你的方法简单
点赞 回复 分享
发布于 2022-06-18 09:42

相关推荐

不愿透露姓名的神秘牛友
07-01 11:47
点赞 评论 收藏
分享
湫湫湫不会java:1.在校经历全删了2.。这些荣誉其实也没啥用只能说,要的是好的开发者不是好好学生3.项目五六点就行了,一个亮点一俩行,xxx技术解决,xxx问题带来xxx提升。第一页学历不行,然后啥有价值的信息也没有,到第二页看到项目了,第一个项目九点,第二个项目像凑数的俩点。总体给人又臭又长,一起加油吧兄弟
点赞 评论 收藏
分享
龙珠传说:nb,公务员解约不需要支付违约金吧
点赞 评论 收藏
分享
评论
65
10
分享

创作者周榜

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