时间限制:3000 ms | 内存限制:65535 KB
难度:1
描述
现在给你一个由小写字母组成字符串,要你找出字符串中出现次数最多的字母,如果出现次数最多字母有多个那么输出最小的那个。
输入
第一行输入一个正整数T(0<T<25)
随后T行输入一个字符串s,s长度小于1010。
输出
每组数据输出占一行,输出出现次数最多的字符;
样例输入
3
abcd
bbaa
jsdhfjkshdfjksahdfjkhsajkf
样例输出
a
a
j
来源
上传者
#include<stdio.h>
#include<string.h>
int main(){
int c,n,m=0,i,j,l;
char a[1200],b[1200];
scanf("%d",&n);
while(n--)
{
scanf("%s",a);
c=strlen(a);
for(i=0;i<c;i++)
{
b[i]=0;
for(j=0;j<c;j++)
{
if(a[i]==a[j])
{
b[i]++;
}
}
}
for(i=0;i<c;i++)
{
for(j=0;j<c;j++)
{
if(b[i]==b[j])
{
if(a[i]>a[j]) a[i]=a[j];
}
}
}
for(i=0,m=0;i<c;i++)
if(m<b[i])
{
m=b[i];
l=i;
}
printf("%c\n",a[l]);
}
return 0;
}