描述
给定一个由a-z这26个字符组成的字符串,统计其中哪个字符出现的次数最多。
输入
输入包含一行,一个字符串,长度不超过1000。
输出
输出一行,包括出现次数最多的字符和该字符出现的次数,中间以一个空格分开。如果有多个字符出现的次数相同且最多,那么输出ascii码最小的那一个字符。
样例输入
abbccc
样例输出
c 3
解题
用数组存储各字母数量,再判断
代码
#include <iostream>
#include <cstring>
using namespace std;
char s[1010];
int num[100];
int main(){
cin>>s;
int max=-1;
int len=strlen(s);
for (int i = 0; i < len; ++i) {//得到个数
num[s[i]-'a']++;
if(num[s[i]-'a']>max)max=num[s[i]-'a'];
}
for (int i = 0; i < 26; ++i) {//输出
if(num[i]==max){
cout<<(char)(i+'a')<<" "<<max;
break;
}
}
}