ZZULIOJ 1131: 가장 많이 사용 되 는 문자 (물 문제, getchar () 의 사용)
1385 단어 한 덩어리 가 이 문 제 를 통과 했다.ZZULIOJ
1131: 가장 많이 쓰 이 는 문자
Time Limit: 1 Sec
Memory Limit: 128 MB
Submit: 2163
Solved: 1023
Submit Status Web Board
Description
영문 자모 중에서 가장 빈도 가 높 은 것 은 어떤 자모 입 니까?출력 문자열 에 가장 많은 알파벳 이 나타 나 는 문자열 을 지정 합 니 다.
Input
대소 문자 와 빈 칸 만 있 는 문자열 을 입력 하 십시오. 길 이 는 100 을 넘 지 않 고 리 턴 으로 끝 납 니 다.
Output
소문 자 를 출력 하면 이 문자열 에서 가장 많이 나 오 는 알파벳 을 표시 합 니 다.답 이 여러 개 있 으 면 ASCII 코드 가 가장 작은 것 만 출력 합 니 다.
Sample Input
An apple
Sample Output
a
생각:
며칠 전에 유 여가 의 책 에서 봤 어 요. C11 표준 은 gets () 를 사용 할 수 없 기 때문에 오늘 은 이 문 제 를 가지 고 while () 의 getchar () 를 사용 합 니 다.
Code:
#include
#include
#include
#define AC main()
using namespace std;
const int MYDD = 1103;
int AC {
int dd[32], c, MaxCount = 0, k;
// char c;
memset(dd, 0, sizeof(dd));
while((c = getchar()) != '
') {
if(c >= 'a' && c <= 'z')
dd[c - 'a']++, k = c - 'a';
if(c >= 'A' && c <= 'Z')
dd[c - 'A']++, k = c - 'A';
if(MaxCount < dd[k]) MaxCount = dd[k];
}
for(int j = 0; j < 32; j++)
if(dd[j] == MaxCount) {
printf("%c", 'a' + j);
break;
}
return 0;
}
/*
asddd
a
*/