题解 | #名字的漂亮度#

名字的漂亮度

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

import java.util.*;
public class Main
{
	public static void main(String[] args)
	{
		Scanner sr=new Scanner(System.in);
		while(sr.hasNext())
		{
			int n=Integer.parseInt(sr.nextLine());//获取名字个数n
			for (int i=0;i<n ;i++ )
			{
				String name=sr.nextLine();//获取名字
				fun(name);
			}
		}
		sr.close();
	}

	public static void fun(String name)//名字最大漂亮度输出方法
        //为满足名字漂亮度最大要求,需要使重复次数最多的字母对应26的漂亮度,其余依次对应25、24...
	{
		int[] ar_int=new int[26];
		int pretty=0;
		char[] ar_char=name.toUpperCase().toCharArray();//先转换为大写字母,再转换为字符数组

		for (char ch:ar_char )//遍历字符数组中的每一个字符
		{
			ar_int[ch-65]+=1;//对ar_int元素重新赋值,默认初始化值为0;如ch='A',则ar_int[0]=1
            //若存在两个'A',则ar_int[0]=2;
		}
		Arrays.sort(ar_int);//将ar_int元素按由小到大排序
		for (int i=0;i<26 ;i++ )
		{
			if (ar_int[i]!=0)//为0则没有意义
			{
				pretty+=ar_int[i]*(i+1);//字母个数*字母对应漂亮度,如输入名字"AAkxx",则为2*26+2*25+24
			}
		}
		System.out.println(pretty);
	}
}
全部评论

相关推荐

Eeeeevans:都是校友,还是同届,我就说直白点,不委婉了,我相信你应该也不是个玻璃心,首先你觉得一个双非的绩点写简历上有用吗?班长职务有用吗?ccf有用吗?企业会关心你高数满分与否吗?第二,第一个项目实在太烂,一眼就能看出是外卖,还是毫无包装的外卖,使用JWT来鉴权,把热点数据放进Redis这两个点居然还能写进简历里,说难听点这两个东西都是学个几十分钟,调用个API就能完成的事情,在双非一本的条件下,这种项目你觉得能拿出手吗,第二个项目你写的东西和你的求职方向有任何的匹配吗?第三,计设那一块毫无价值,如果想突出自己会前端,直接写入专业技能不行吗,最后,专业技能里像深入理解JVM底层原理这种你觉得这句话你自己真的能匹配吗?都是校友加上同届,我措辞直接,但希望能点出你的问题,想进大厂还得继续沉淀项目和学习
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务