您的位置:首页 > 其它

华为机试练习150817第一题:名字的漂亮度

2015-08-18 09:16 204 查看


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

/**
* Created by cq on 2015/8/17.
*/
public class Main {
public static void main(String[] args){
Scanner in = new Scanner(System.in);

int nameNum = in.nextInt();
in.nextLine();

for (int i=0; i<nameNum; i++){
String s = in.nextLine();
System.out.println(beautyScore(s));
}
in.close();
}
public static int beautyScore(String name){
name = name.toLowerCase();
int len = name.length(), score = 0;

//计数
int[] records = new int[26];
for(int i=0; i<len; i++){
char alp = name.charAt(i);
records[alp-'a']++;
}

//升序排序
Arrays.sort(records);

//计分
int index = 25;
while (records[index] != 0){
score += (records[index]*(index+1));
index--;
}

return score;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: