728x90
F = list(input().lower()) # 문자를 소문자열로 받아옴
Q = list(set(F))          # 문자 갯수를 세기 위해서 중복 제거
cnt = 0                   # 가장 많은 문자 갯수 저장
R = []                    # 문자 갯수가 같은 문자 저장

# 가장 많은 문자의 갯수를 구하기 위한 반복문
for i in Q:               
  if F.count(i) > cnt:
    cnt = F.count(i)

# cnt와 중복값을 가진 문자를 R에 저장
for i in Q:
  if F.count(i) == cnt:
    R.append(i)
    
if len(list(set(R))) > 1:
  print('?')
else:
  print(R[0].upper())

맞추긴 했는데 메모리와 시간을 엄청 먹는다. 좀더 빠르게 푸는 방법은 없을까?

728x90

'Algorithm' 카테고리의 다른 글

백준 2675 파이썬  (2) 2022.01.08
백준 2439 파이썬  (0) 2022.01.08
백준 2667 파이썬 (BFS풀이)  (0) 2022.01.07
백준 2606 파이썬 (BFS풀이)  (0) 2022.01.06
백준 1012 파이썬  (0) 2022.01.04

+ Recent posts