Algorithm/백준
[문자열] Python - 4358번, 생태학
hanbikan
2021. 4. 7. 17:42
4358번: 생태학
프로그램은 여러 줄로 이루어져 있으며, 한 줄에 하나의 나무 종 이름이 주어진다. 어떤 종 이름도 30글자를 넘지 않으며, 입력에는 최대 10,000개의 종이 주어지고 최대 1,000,000그루의 나무가 주어
www.acmicpc.net
import sys
input = sys.stdin.readline
trees = {}
treeCount = 0
while True:
curInput = input().rstrip()
if not curInput:
break
if trees.get(curInput):
trees[curInput] += 1
else:
trees[curInput] = 1
treeCount += 1
sortedTreesName = sorted(trees.keys())
for treeName in sortedTreesName:
print('%s %.4f' % (treeName, trees[treeName]*100/treeCount))
입력을 Dictionary(trees)에 넣어준다.
이후 이름들만 정렬시킨 리스트(sortedTreesName)를 하나 만들어주고, 이 리스트를 따라 Dictionary를 탐색한다.