문제
영어에서는 어떤 글자가 다른 글자보다 많이 쓰인다. 예를 들어, 긴 글에서 약 12.31% 글자는 e이다.
어떤 글이 주어졌을 때, 가장 많이 나온 글자를 출력하는 프로그램을 작성하시오.
입력
첫째 줄부터 글의 문장이 주어진다. 글은 최대 50개의 줄로 이루어져 있고, 각 줄은 최대 50개의 글자로 이루어져 있다. 각 줄에는 공백과 알파벳 소문자만 있다. 문장에 알파벳은 적어도 하나 이상 있다.
출력
첫째 줄에 가장 많이 나온 문자를 출력한다. 여러 개일 경우에는 알파벳 순으로 앞서는 것부터 모두 공백없이 출력한다.
소스코드
문제풀이
최대 50개 줄, 50개 글자라는 제한이 있지만 범위가 크므로 언제 끝날지 모르는 입력이라 판단해 sys모듈을 이용한다.
- sys모듈을 이용해 입력을 받으며 줄바꿈과 공백을 없애고 글자 사이의 공백을 제거
- 딕셔너리 생성 후 문자열 s에 포함 된 글자들의 횟수를 기록
- 글자가 key 값으로 등록되어 있지 않다면 등록
- 등록이 되어있다면 value 값을 1씩 증가
- value 값 중 max 값 구하고 max를 value 값으로 갖는 key 값들을 모두 새로운 리스트인 idx에 추가
- idx 리스트를 알파벳 순으로 정렬 후 공백 없이 내용 출력
'Koala - 9기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/C++] 6996 애너그램 (0) | 2023.01.21 |
---|---|
[백준 / C++] 7785번: 회사에 있는 사람 (0) | 2023.01.20 |
[백준 / Python] #3985 롤 케이크 (0) | 2023.01.19 |
[백준/python] 16205번 : 변수명 (0) | 2023.01.19 |
[백준/Python] 1362 펫 (0) | 2023.01.18 |