전공공부
[BOJ_4358] 생태학 본문
설명
마지막에 처리 부분이 힘들었다. 조건문이 str == null 으로 들어가게 해야 런타임 Exception을 배제한다.
코드
package Data_Structure;
import java.io.*;
import java.util.*;
public class BOJ_4358 {
public static void main(String[] args) throws Exception{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
Map<String,Double> map = new LinkedHashMap<String,Double>();
double cnt = 0;
while(true){
String str = in.readLine();
if(str == null){
break;
}
cnt++;
map.put(str,(map.getOrDefault(str,0.0) + 1.0));
}
List<String> keyList = new ArrayList<>(map.keySet());
keyList.sort((s1, s2) -> s1.compareTo(s2));
for (String key : keyList) {
double ratio = (double) ((map.get(key)/cnt) * 100.0);
System.out.println(key + " " + String.format("%.4f", ratio));
}
}
}
4358번: 생태학
프로그램은 여러 줄로 이루어져 있으며, 한 줄에 하나의 나무 종 이름이 주어진다. 어떤 종 이름도 30글자를 넘지 않으며, 입력에는 최대 10,000개의 종이 주어지고 최대 1,000,000그루의 나무가 주어
www.acmicpc.net
'Study > Problem Solving' 카테고리의 다른 글
[BOJ_2231] 분해 합 (1) | 2023.11.02 |
---|---|
[BOJ_2798] 블랙잭 (1) | 2023.11.01 |
[BOJ_11279] 최대 힙 (1) | 2023.10.30 |
[BOJ_2504] 괄호의 값 (1) | 2023.10.29 |
[BOJ_1874] 스택 수열 (1) | 2023.10.28 |