第十三届蓝桥杯省赛 Java 大学 B 组 的一道题
【问题描述】
给定一个只包含大写字母的字符串 S,请你输出其中出现次数最多的字母。
如果有多个字母均出现了最多次,按字母表顺序依次输出所有这些字母。
【输入格式】
一个只包含大写字母的字符串 S .
【输出格式】
若干个大写字母,代表答案。
【样例输入】
BABBACAC
【样例输出】
AB
以下是博主参赛时写的代码:
import java.util.Scanner;public class Main{public static void main(String[] args){Scanner sc=new Scanner(System.in);String s=sc.nextLine();sc.close();int len=s.length();int f[]; f=new int[26];char c,d;for (int i = 0; i < len; i++) {c=s.charAt(i);int num=c-65;f[num]++;}int flag=0;for (int n = 0; n < 26; n++) {if (f[flag]<f[n]) {flag=n;}}d=(char) ('A'+flag);System.out.print(d);for (int m = flag+1; m < 26; m++) { if (f[flag]==f[m]) {flag=m;d=(char) ('A'+flag);System.out.print(d);}}}}
运行结果:
如果觉得《输出字符串中出现次数最多的字母》对你有帮助,请点赞、收藏,并留下你的观点哦!