题目描述

给出一个名字,该名字有26个字符串组成,定义这个字符串的“漂亮度”是其所有字母“漂亮度”的总和。
每个字母都有一个“漂亮度”,范围在1到26之间。没有任何两个字母拥有相同的“漂亮度”。字母忽略大小写。
给出多个名字,计算每个名字最大可能的“漂亮度”。

输入描述:
整数N,后续N个名字
输出描述:
每个名称可能的最大漂亮程度
输入例子:
2
zhangsan
lisi
输出例子:
192
101

思路解析:

要求名字漂亮度的最大值,需要统计每个字母出现的次数,保证出现次数最多的字母的漂亮度最大,即26,其他的依次类推......

名字的漂亮度=26*字母个数最多的+25*字母个数其次的+......

import java.util.*;
public class BeautifulName {public static void main(String[] args) {Scanner scan=new Scanner(System.in);int count=scan.nextInt();String[] words=new String[count];//依次将要输入的值录入数组for(int i=0;i<count;i++){Scanner scan1=new Scanner(System.in);words[i]=scan1.nextLine();}//循环对每个名字进行漂亮度计算for(int i=0;i<count;i++){Beauty(words[i]);}}//计算名字漂亮度static void Beauty(String str){HashMap<Character,Integer> hm=new HashMap<Character,Integer>();//遍历名字的每个字母,记录下每个字母出现的次数for(char ch:str.toCharArray()){if(hm.containsKey(ch)){hm.put(ch, hm.get(ch)+1);}else hm.put(ch, 1);}//取出所有的出现次数Collection<Integer> coll = hm.values();List<Integer> nums = new ArrayList<Integer>(coll);Collections.sort(nums);//对所有的出现次数进行排序int N=26;//每个字母漂亮度int sum=0;//每个名字总漂亮度for(int i=nums.size()-1;i>=0;i--){sum+=N*nums.get(i);N--;}System.out.println(sum);}
}

华为OJ——名字的漂亮度相关推荐

  1. 华为OJ 名字的漂亮度

    描述 给出一个名字,该名字有26个字符串组成,定义这个字符串的"漂亮度"是其所有字母"漂亮度"的总和.每个字母都有一个"漂亮度",范围在1到 ...

  2. 华为初级——名字的漂亮度

    值得注意:对于每个名字来说:名字的漂亮度=26*字母个数最多的+25*字母个数其次的+24*字母个数再其次的-- 源程序: #include<iostream> #include<s ...

  3. 华为机试—名字的漂亮度

    名字的漂亮度=26*字母个数最多的+25*字母个数其次的+24*字母个数再其次的(忽略大小写)+-.+1*出现次数最小的. 输入:整数N,N个字符串 输出:N个字符串漂亮度 例如: 输入1 a 输出 ...

  4. java 名字的漂亮度_名字的漂亮度

    题目如下: 给出一个名字,该名字有26个字符串组成,定义这个字符串的"漂亮度"是其所有字母"漂亮度"的总和. 每个字母都有一个"漂亮度",范 ...

  5. 牛客网|名字的漂亮度

    题目信息 给出一个名字,该名字有26个字符串组成,定义这个字符串的"漂亮度"是其所有字母"漂亮度"的总和. 每个字母都有一个"漂亮度",范围 ...

  6. 华为机试HJ45:名字的漂亮度

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 给出一个名字,该名字有26个字符组成,定义这个字符串的"漂亮度" ...

  7. 【牛客网华为机试】HJ45 名字的漂亮度

    题目 描述 给出一个名字,该名字有26个字符组成,定义这个字符串的"漂亮度"是其所有字母"漂亮度"的总和. 每个字母都有一个"漂亮度",范围 ...

  8. 华为机试——名字的漂亮度

    名字的漂亮度 给定一个名字,改名字有26个字符串组成,顶一个这个字符串的"漂亮度"是其所有字母"漂亮度"的总和. 每个字母都有一个"漂亮度" ...

  9. 华为机试-名字的漂亮度

    题目描述 给出一个名字,该名字有26个字符串组成,定义这个字符串的"漂亮度"是其所有字母"漂亮度"的总和. 每个字母都有一个"漂亮度",范围 ...

最新文章

  1. 函数assert()详解
  2. 最简单的java WebService服务器端搭建
  3. hdu 2444(二分图的判断以及求最大匹配)
  4. 技术博客么?开始每天一更
  5. 笔记本平板电脑推荐_平板电脑推荐表(2020.618)
  6. python做副业_学习Python可以做哪些副业,你是不是感觉自己错过了一个亿?
  7. Linux静态库运行找不到lc,创建和使用静态库(问题:undefined reference)
  8. Linux桌面词典 GoldenDict词典
  9. 全国省市区java_Jsoup获取全国地区数据(省市县镇村)
  10. NPN与PNP型传感器的区别
  11. 学习新手给Android新手的一些学习建议
  12. 在国内用Windows给BT做种,真是一山绕过一山缠(附解决方案)
  13. C#:查找文件所在位置
  14. 自己动手制作C 语言编译器(8):表达式
  15. [转]科普 | 什么是宽表?
  16. 超好用的导航首页(最新)
  17. 【MQTT】.Net Core 操作
  18. R语言书籍学习02 《R语言数据分析、挖掘建模与可视化》-第十三章 SVM模型
  19. 俞敏洪在《赢在中国》中的经典点评语录
  20. 2019CCPC秦皇岛赛区(重现赛)- I

热门文章

  1. robot framework 的AutoItLibrary常用关键字(转)
  2. CRM项目记录(九)
  3. 简练软考知识点整理-激励理论之XY理论
  4. 逻辑运算符和逗号运算符
  5. AI:2020年6月23日北京智源大会演讲分享之机器学习专题论坛  ——09:05-09:45Yolanda Gil教授《Thoughtful AI: Forging A New Partnersh》
  6. 新星计划【Java微服务+云原生】赛道开启!
  7. IE:最好用的起始页(转)
  8. c语言红包编程作业代码,C语言实现抢红包程序代码精简版
  9. A Primer On GitOps And Why It’s Great for Continuous Delivery
  10. 天津平面设计培训机构选哪家好?