nyoj 字母统计

来源:互联网 发布:网络设备监控软件orion 编辑:程序博客网 时间:2024/06/04 00:51

字母统计

时间限制:3000 ms  |  内存限制:65535 KB
难度:1
描述
现在给你一个由小写字母组成字符串,要你找出字符串中出现次数最多的字母,如果出现次数最多字母有多个那么输出最小的那个。
输入
第一行输入一个正整数T(0<T<25)
随后T行输入一个字符串s,s长度小于1010。
输出
每组数据输出占一行,输出出现次数最多的字符;
样例输入
3abcdbbaajsdhfjkshdfjksahdfjkhsajkf
样例输出
aaj
来源
[路过这]原创

 import java.util.Scanner;public class Main{public static void main(String[] args){Scanner yina = new Scanner(System.in);int n = yina.nextInt();while(n-- > 0){String s = yina.next();int  [] array = new int[26];for(int i = 0;i < s.length();i++)array[(int)s.charAt(i) - (int)'a'] ++;int max = 0;int maxi = 0;for(int i = 0;i < 26;i++){if(array[i] > max){max = array[i];maxi = i;}}System.out.println((char)(maxi + (int)'a'));}}}        


import java.util.Scanner;import java.util.Map;import java.util.HashMap;public class Main{   public static void main(String []args){  Scanner cin=new Scanner(System.in);      int n=cin.nextInt();   while(n>0)   { n--;   int []num =new int[30];   char []ans=new char [1100];   String str=cin.next();   ans=str.toCharArray();   int max=0;   char ansMax='a';   for(int i=0;i<ans.length;i++)   {   int x=ans[i];       num[x-97]++;     }   for(int i=0;i<26;i++)   {   if(num[i]>max)   {    max=num[i];   ansMax=(char)(i+97);   }   }System.out.println(ansMax);      }}}