ACAIT

[Python] 문자열: 백준 1157 단어 공부 본문

독학/백준 문제 풀이

[Python] 문자열: 백준 1157 단어 공부

831x99 2022. 9. 30. 12:03
 

1157번: 단어 공부

알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.

www.acmicpc.net

word = input().upper() # 대문자로 통일
new_words = list(set(word)) # 입력 받은 문자열에서 중복값 제거

cnt_list = [] # 알파벳 카운트 리스트
for i in new_words: # 중복 제거한 문자열에 들어있는 문자 갯수 카운트
    cnt = word.count(i) # 첫 번째 요소를 카운트
    cnt_list.append(cnt) # 카운트 리스트에 요소 추가

if cnt_list.count(max(cnt_list)) > 1: 
    # 카운트 리스트의 최대값을 또 카운트 했을 때 1개 초과면
    print('?')
else:
    max_index = cnt_list.index(max(cnt_list))
    # 최대 중복 알파벳으로 맥스 인덱스를 초기화
    print(new_words[max_index])
    # 중복 제거된 문자열에서 맥스 인덱스로 인덱싱