import sys

dic=dict()
cnt=0

while True:
    word = sys.stdin.readline().rstrip()
    if word == '':
        break
    cnt+=1
    if word in dic:
        dic[word]+=1
    else:
        dic[word]=1

tree=sorted(dic.items())

for key, value in tree:
    percent=round((value/cnt)*100,4)
    print(key, '%.4f' %percent)

<코드설명>

먼저 while문을 통해 word를 입력받아주었다. word에 아무 입력도 없을 때 break를 하도록 해주었다.word가 dic에 있다면 dic[word]에 1을 추가시켜주었고, 그렇지 않다면 dic[word]를 1로 지정해주었다.그리고 백분율을 구해야하기 때문에 while문을 돌 때마다 cnt값을 증가시켜주었다.사전 순으로 정렬해야 하므로 dic의 items를 sort해주고 이를 tree에 저장해주었다.백분율을 구하기 위해 value값을 cnt로 나누었고, 이를 100 곱해주었다. 그리고 올림자리 수를 4로 지정하였다.그리고 소수점 4번째자리까지 출력해야하므로 출력형식을 %.4f로 지정하여 출력해주었다.

 

<실행결과>

'Algorithm > BOJ' 카테고리의 다른 글

[BOJ] 22233 가희와 키워드  (0) 2022.09.24
[BOJ] 1475 방 번호  (0) 2022.09.18
[BOJ] 20291 파일 정리  (0) 2022.09.17
[BOJ] 1302 베스트셀러  (0) 2022.09.11
[BOJ] 7785 회사에 있는 사람  (0) 2022.09.11

+ Recent posts