백준, 생태학, 4358

2024. 8. 20. 23:34ETC/Algorithm

[유형]

자료구조

 

[문제링크]

https://www.acmicpc.net/problem/4358

 

[요약]

미국 전역의 나무들이 주어졌을 때, 각 종이 전체에서 몇 %를 차지하는지 구하는 프로그램을 만들어야 한다.

 

[문제풀이]

defaultdict: 인자로 주어진 객체의 기본값을 딕셔너리의 초기값으로 지정할 수 있다.

몇 개의 종이 주어지는지 알 수 없기 때문에, while문과 break문을 추가한다.

딕셔너리의 키를 통해 tree_name을 저장하고, 정렬을 한다.

import sys
from collections import defaultdict

def input():
    return sys.stdin.readline().rstrip()

tree_dict = defaultdict(int)
n=0

while True:
    word = input()
    if not word:
        break
    tree_dict[word] += 1
    n+=1

tree_name = list(tree_dict.keys())
tree_name.sort()
for tn in tree_name:
    print('%s %.4f' % (tn, tree_dict[tn]/n*100))

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

백준, N번째 큰 수 ,2075  (0) 2024.08.22
백준, 최소 힙, 1927  (0) 2024.08.22
백준, 나는야 포켓몬 마스터 이다솜,1620  (0) 2024.08.20
백준,문자열집합,14425  (0) 2024.08.20
백준, 외계인의 기타 연주, 2841  (0) 2024.08.19