该题思路比较简单且容易想到,由于该题数据不是很大,我们直接遍历整个字符串即可,同时遇到字母就将其对应数组的位置计数++即可(使用ASCII码联系数组下标与字母)
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include <iomanip>
#include<cmath>
using namespace std;
char alph[26] = { 0 };
int maxn = 0;
int main()
{
string input;
int index;
cin >> input;
for (int i = 0; i < input.length(); i++)
{
if (input[i] - 'a' >= 0 && input[i] - 'a' <= 25)
{
alph[input[i] - 'a']++;//对应字母数量++
}
}
for (int i = 0; i < 26; i++)
{
if (alph[i] > maxn)//找最大(从a开始,找到的最大也是字典序最小的)
{
maxn = alph[i];
index = i;
}
}
cout << (char)('a' + index) << endl;
cout << maxn << endl;
return 0;
}