45 lines
1020 B
Java
45 lines
1020 B
Java
package LanQiaoOJ;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.HashMap;
|
|
import java.util.Scanner;
|
|
|
|
/*给定一个只包含大写字母的字符串 S, 请你输出其中出现次数最多的字符。
|
|
如果有多个字母均出现了最多次, 按字母表顺序依次输出所有这些字母。
|
|
输入格式
|
|
一个只包含大写字母的字符串 S.
|
|
输出格式
|
|
若干个大写字母,代表答案。 */
|
|
public class 字符统计 {
|
|
public static void main(String[] args) {
|
|
Scanner sc=new Scanner(System.in);
|
|
String s=sc.next();
|
|
//需要一个东西去统计每个字符出现的次数
|
|
HashMap<Character,Integer>hashMap=new HashMap<>();
|
|
for(int i=0;i<s.length();i++) {
|
|
char c=s.charAt(i);
|
|
hashMap.put(c, hashMap.getOrDefault(c,0)+1);
|
|
}
|
|
//统计出现最多的字符
|
|
int max=0;
|
|
//用来存答案
|
|
ArrayList<Character> list=new ArrayList<>();
|
|
for(char key:hashMap.keySet()) {
|
|
int x=hashMap.get(key);
|
|
if(x>max) {
|
|
list.clear();
|
|
list.add(key);
|
|
max=x;
|
|
}else if(x==max) {
|
|
list.add(key);
|
|
}
|
|
}
|
|
for(char c:list) {
|
|
System.out.print(c);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
}
|