티스토리 뷰

문제출처 - https://www.acmicpc.net/problem/1157

 

1157번: 단어 공부

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

www.acmicpc.net

string = input().upper()
dic = dict()

for i in range(len(string)):
    if string[i] in dic:
        dic[string[i]] += 1
    else:
        dic[string[i]] = 1

maxCnt = max(dic.values())
answer = []
for key, value in dic.items():
    if value == maxCnt:
        answer.append(key)

if len(answer) != 1:
    print('?')
else:
    print(answer[0])

설명

 

딕셔너리를 한개 만들어서 key값은 단어, value값은 단어의 개수를 같이 저장해줬다.

 

가장 많이 사용된 알파벳이 여러 개 존재하는 경우가 있기 때문에 단어의 개수가 max값인 것들을 answer 배열에 저장해주고 answer배열의 길이가 2 이상이면 '?' 출력, 1이면 해당 단어를 출력해줬다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함