29:统计字符数
总时间限制:
1000ms
内存限制:
65536kB
描述
给定一个由a-z这26个字符组成的字符串,统计其中哪个字符出现的次数最多。
输入
输入包含一行,一个字符串,长度不超过1000。
输出
输出一行,包括出现次数最多的字符和该字符出现的次数,中间以一个空格分开。如果有多个字符出现的次数相同且最多,那么输出ascii码最小的那一个字符。
样例输入
abbccc
样例输出
c 3
思路:1.先标准化输入,之后对字符进行计数并找出最大的出现次数。
2.之后判断出现次数等于最大次数时,在其中找出最小的字母。
#include<bits/stdc++.h>
int main()
{
char s[1000];
scanf("%s",s);
int n=strlen(s);
int i,j,k,a[1000],max=0;
for(i=0;i<n;i++){
k=0;
for(j=0;j<n;j++){
if(s[i]==s[j]){
k++;
}
}
a[i]=k;
if(max<k){
max=k;
}
}
char c='z';
for(i=0;i<n;i++){
if(a[i]==max){
if(c>s[i]){
c=s[i];
}
}
}
printf("%c %d",c,max);
return 0;
}