文字統計2(sdut oj)
3469 ワード
文字統計2
Time Limit: 1000MS
Memory Limit: 65536KB
Problem Description
英語の文を入力し、スペースを除いて最も多くの文字とその出現回数を出力します.
Input
入力データには複数のテストインスタンスが含まれており、各テストインスタンスは100を超えない英語の文で、1行を占めています.
Output
各文の中で最も多く出現した文字とその出現回数を行ごとに出力します(複数文字の回数が同じであれば、ASCIIコードの最小文字のみを出力します).
Example Input
I am a student
a good programming problem
ABCD abcd ABCD abcd
Example Output
a 2
o 4
A 2
Hint
Author
リファレンスコード
#include
#include
int main()
{
char s[200];
int a[200];
int i,len,max,k;
while(gets(s))
{
memset(a,0,sizeof(a));
k = 0;
max = 0;
len = strlen(s);
for(i = 0; i < len; i++)
{
if(s[i] == ' ')
continue;
a[s[i]]++;
}
for(i = 0; i < 200; i++)
{
if(max < a[i])
{
max = a[i];
k = i;
}
}
printf("%c %d",k,max);
printf("
");
}
return 0;
}