思路是
以字符为关键字,字符出现次数为内容组成键值对儿,建立一张表,统计时直接查表即可。
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <string>
#include <map>
#include <queue>
#include <algorithm>
using namespace std;
void count(const char* s);
int main()
{
char s[100001];
cin.get(s,100001);
count(s);
}
void count(const char* s)
{
int* p=new int[128];
memset(p,0,128*sizeof(int));
for(int i=0;i<strlen(s);i++)
{
if((s[i]>='A'&&s[i]<='Z')||(s[i]>='a'&&s[i]<='z'))
p[(int)tolower(s[i])]++;
}
int max_index=0;
for(int i=1;i<128;i++)
{
if(p[i]>p[max_index])
max_index=i;
}
printf("%c %d",max_index,p[max_index]);
delete p;
}