반응형
문제 보기
문제 해설
알파벳 소문자 a-z의 아스키코드는 97 ~ 122이고, 대문자 A-Z의 아스키코드는 65_90입니다.
아스키 코드 변환하는 방법은 2019/09/10 - [DEVLOG/Algorithms] - [BOJ 11654] 아스키 코드 - 파이썬 풀이
문자열에서 각 문자의 개수를 세는 방법은 count() 함수를 사용하는 것입니다.
"baaa"라는 문자열이 주어졌을 때, word.count('a')를 통해 'a'의 개수 3을 얻을 수 있습니다.
각 문자별로 개수를 리스트에 저장하고 최대값을 구합니다.
만약 그 최대값이 리스트에 여러개 존재한다면 ?를 출력합니다.
파이썬(Python) 풀이
alphabet_list = []
word = input()
for ascii_code in range(65, 91):
alphabet_list.append(word.count(chr(ascii_code)))
for ascii_code in range(97, 123):
alphabet_list[ascii_code-97] += word.count(chr(ascii_code))
max_count = max(alphabet_list)
if alphabet_list.count(max_count)>1:
print('?')
else:
print(chr(alphabet_list.index(max_count)+65))
반응형
'DEVLOG > Algorithms' 카테고리의 다른 글
[BOJ 2805] 나무 자르기 - 파이썬 풀이 (0) | 2019.09.11 |
---|---|
[이분 탐색] 알고리즘 설명 및 예제 풀이 (0) | 2019.09.10 |
[BOJ 10809] 알파벳 찾기 - 파이썬 풀이 (0) | 2019.09.10 |
[BOJ 1152] 단어의 개수 - 파이썬 풀이 (0) | 2019.09.10 |
[BOJ 11654] 아스키 코드 - 파이썬 풀이 (0) | 2019.09.10 |
댓글