Programming/BOJ

20210116 // BaekJoon Online Judge // 1157

껨코 2021. 1. 16. 16:31

백준 알고리즘 BaekJoon Online Judge 1157번 "단어 공부" 문제입니다.

from collections import Counter 

def modefinder(nums): 
  c = Counter(nums) 
  order = c.most_common() 
  maximum = order[0][1] 
  modes = [] 
  
  for num in order: 
    if num[1] == maximum: 
      modes.append(num[0]) 
  if len(modes) >= 2:
    return "?"
  else:
    return modes[0]

S = input()
print(modefinder(S.upper()))

알파벳 문자열을 입력받고 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하는 문제다.

 

앞에서 작성했던 최빈수 구하는 문제랑 비슷하다.

 

단 이거는 대문자로 출력을 해야하므로 upper() 메서드를 활용하여 입력 문자열은 대문자로 전부 바꾼 후에 구한다.