[Python] 백준알고리즘 #1157

r1verfuture·2021년 12월 14일
0

백준알고리즘

목록 보기
47/110

📝 문제

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

⌨️ 입력

첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다.

🖨 출력

첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다.

⌨️ 예제 입력 1

Mississipi

🖨 예제 출력 1

?

⌨️ 예제 입력 2

zZa

🖨 예제 출력 2

Z

⌨️ 예제 입력 3

z

🖨 예제 출력 3

Z

⌨️ 예제 입력 4

baaa

🖨 예제 출력 4

A

📚 내가 제출한 코드

myWord = input().upper()
wordDict = {}
for w in myWord:
  if w in wordDict:
    wordDict[w] += 1
  else:
    wordDict[w] = 1
maxKey = ''; maxValue = 0
for key, value in wordDict.items():
  if value > maxValue:
    maxKey = key
    maxValue = value
if list(wordDict.values()).count(maxValue) > 1:
  print('?')
else:
  print(maxKey)

✏️ 내가 제출한 코드에 대한 설명

  • input() : 키보드로 입력한 값을 받는 함수
  • a.upper() : a를 모두 대문자로 바꿔서 반환하는 함수
  • if a in b : b 안에 a가 있는지 여부를 판단한다.
  • for a, b in c.items() : c의 key와 value가 하나씩 a, b로 대입되어 for문 실행된다.
  • a.count(b) : a 안에 있는 b 개수를 반환하는 함수
  • 메모리 : 31156 KB
  • 시간 : 260 ms
  • 코드 길이 : 330 B
profile
#iOS #Swift #Developer #Python

0개의 댓글