728x90
문제
20291번: 파일 정리
친구로부터 노트북을 중고로 산 스브러스는 노트북을 켜자마자 경악할 수밖에 없었다. 바탕화면에 온갖 파일들이 정리도 안 된 채 가득했기 때문이다. 그리고 화면의 구석에서 친구의 메시지를
www.acmicpc.net
접근 방식
각 확장자인 파일의 개수를 Map을 이용하여 카운팅하여
확장자명의 사전 순으로 개수와 같이 출력해주면 된다.
키를 기준으로 정렬된 상태를 유지하면 되기 때문에
TreeMap을 사용하면 효율적으로 풀 수 있다.
풀이
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int n = Integer.parseInt(br.readLine());
String[] name;
TreeMap<String, Integer> map = new TreeMap<>();
while (n-- > 0) {
name = br.readLine().split("\\.");
map.put(name[1], map.getOrDefault(name[1], 0) + 1);
}
for (String key : map.keySet()) {
sb.append(key).append(" ").append(map.get(key)).append("\n");
}
System.out.println(sb);
}
}
'Java > Algorithms' 카테고리의 다른 글
[백준] 12789번 : 도키도키 간식드리미 (1) | 2024.04.06 |
---|---|
[백준] 22233번 : 가희와 키워드 (0) | 2024.04.04 |
[백준] 4358번 : 생태학 (0) | 2024.04.02 |
[백준] 11559번 : Puyo Puyo (0) | 2024.04.01 |
[백준] 15686번 : 치킨 배달 (0) | 2024.04.01 |