본문 바로가기

알고리즘

python 백준1157 단어공부(BOJ1157)

문제링크 : https://www.acmicpc.net/problem/1157

 

1157번: 단어 공부

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

www.acmicpc.net

반복문과 조건문이랑 파이썬 대문자,소문자변경, 아스키코드 변환 함수정도 알면 쉽게 풀수있을것같다!

#입력
input_str = input().upper()

#알파벳
alphbet = [0] * 26

for i in input_str:
  alphbet[ord(i)-65] += 1
  
max_cnt = 0
max_val = 0
max_index = 0

for i in range(0,len(alphbet)):
  if alphbet[i] == max_val:
    max_cnt += 1
  if alphbet[i] > max_val:
    max_cnt = 1
    max_val = alphbet[i]
    max_index = i
#출력
if max_cnt > 1:
  print("?")
else :
  print(chr(65+max_index))