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

输入描述:
整数N,后续N个名字

输出描述:
每个名称可能的最大漂亮程度

输入例子:
2
zhangsan
lisi

输出例子:
192
101


思路:用一个大小为26的数组保存每个字母出现的次数,然后对次数排序,然后为从大到小为数组的数分配权值:26,25,24,、、、1;


代码:


import java.util.Arrays;
import java.util.Scanner;public class BeautyRank {public static void main(String[] args) {// TODO Auto-generated method stubScanner sc=new Scanner(System.in);while (sc.hasNext()) {int n=sc.nextInt();String s[]=new String[n];for(int i=0;i<n;i++){s[i]=sc.next();}beautyRank( n,s);}}public static void beautyRank(int n,String s[]){for(int i=0;i<n;i++){System.out.println(beautyDegree(s[i]));}}public static int beautyDegree(String name){int degree=0;int a[]=new int[26];name=name.toLowerCase();for(int i=0;i<name.length();i++){char ch=name.charAt(i);a[ch-'a']++;}Arrays.sort(a);for(int i=0;i<26;i++){degree+=a[i]*(i+1);}return degree;}
}

华为机试-名字的漂亮度相关推荐

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

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

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

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

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

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

  4. 华为OJ——名字的漂亮度

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

  5. 【强烈推荐收藏】坚持3个月爆肝华为机试108题C++全解(适合新手入门,就业必刷套题)

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 前言 金九银十,金三银四.当前正处于校招.社招的火热期,之前就想为正在筹备就业的同学们准备刷题宝 ...

  6. 牛客在线编程-华为机试-中等

    牛客在线编程题目-华为机试-中等 题号 题目 知识点 难度 通过率 HJ16 购物单 动态规划 中等 21.21% HJ17 坐标移动 字符串 中等 24.79% HJ20 密码验证合格程序 数组 字 ...

  7. 华为机试108题(C 语言解答)

    Nowcoder题库链接:华为机试 HJ1 字符串最后一个单词的长度(字符串) 输入:hello nowcoder输出:8说明: 最后一个单词为nowcoder,长度为8 示例代码: HJ1.c #i ...

  8. 【华为机试 Python实现】华为机试题集合(已更新171篇)

    文章目录 新手指引 数据结构基础 华为机试真题系列 牛客网华为机试系列 Python 八股文系列 <华为机试真题详解>专栏定价99.9 包含 <华为机试真题>的所有题目. 包含 ...

  9. Java算法:华为机试算法(下),华为算法Java版,牛客网华为算法73~108题

    接上篇:Java算法:华为机试算法(中),华为算法Java版,牛客网华为算法55~72题   HJ73 计算日期到天数转换 计算日期到天数转换 题目描述 根据输入的日期,计算是这一年的第几天.. 测试 ...

最新文章

  1. scrapy基础知识之 parse()方法的工作机制思考:
  2. 孰轻孰重:可穿戴式设备的助益与风险
  3. php使用strstr函数 ,判断字符串A中是否含有字符串B
  4. 二项分布均值和方差的简单推导
  5. IDOC实例, Inbound IDOC
  6. java文件打包jar文件_Java打包成jar文件,以及将jar文件导出为exe文件方法汇总(图形说明)...
  7. PostgreSQL 10.1 手册_部分 I. 教程_第 2 章 SQL语言
  8. 启动java服务时刷新缓存_Spring java项目对外提供服务和java进程启动时bean,内部缓存加载的先后关系?...
  9. php 接口有几种,【后端开辟】php接口有哪些范例?
  10. Elasticsearch 数据写入原理
  11. CCNA之网络地址转换(NAT)简介
  12. edge 浏览器中数字显示为链接
  13. 洛谷 P5089: CodeForces #500 (Div. 1) B / 1012B : Chemical table
  14. 【论文分享】PathQG: 基于事实的神经问题生成
  15. php集成开发环境xampp的搭建
  16. 想去掉抖音短视频里的水印,有没有一键去水印的方法?
  17. 谷歌项目经理都是怎么玩OKR的?我只告诉你
  18. Centos7解决不能上网问题
  19. Java 性能优化之——缓冲区如何让代码加速
  20. 阿里云域名和ip绑定最新详细步骤

热门文章

  1. WARN [Producer clientId=console-producer] Connection to node -1 could not be established.
  2. 两个日期之间月份的差异
  3. 机器视觉光源案例锦集(二)
  4. 连锁创业,自主创业,你如何选择?
  5. auto.js 脚本代码大全_本周 GitHub 速览:您的代码有声儿吗?(Vol.38)
  6. linux virtual machine扩大硬盘,如何增加虚拟机的硬盘大小?
  7. MS17-010(Eternal blue永恒之蓝)漏洞利用+修复方法
  8. 19号笔刷是哪个_19号笔刷怎么设置?超详细的19号笔刷设置!
  9. 数学建模学习笔记之评价问题聚类分析法
  10. Hadoop入门教程