코딩테스트 대비/단계별 코딩 테스트 준비(27일 과정)

[문자열/Python] 1157번: 단어 공부 - 효과는 굉장했다!

bluetag_boy 2022. 2. 11. 14:30
반응형
 

1157번: 단어 공부

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

www.acmicpc.net

 

알고리즘 분류

  • 구현
  • 문자열

 

 

SOLUTION

import sys

word = sys.stdin.readline().rstrip().upper() # upper() 함수를 통해 대문자로 만들어줌
set_word = list(set(word)) # set() 함수를 통해 중복된 값들 제거
cnt = []

for alphabet in set_word:
    cnt.append(word.count(alphabet))

if cnt.count(max(cnt)) > 1: # 가장 많이 사용된 알파벳이 여러개 일 때
    print("?")

else:
    idx = cnt.index(max(cnt)) # 가장 많이 사용된 알파벳 인덱스 값 할당
    print(set_word[idx])

※ upper()

  • upper() 함수는 소문자를 대문자로 바꾸어 줍니다.
  • 이미 대문자라면 원래 문자열을 반환합니다.