[알고리즘]/백준

자바 - 구현 - 백준 20291 파일 정리

broship 2021. 3. 13. 11:30

문제


 

 

 

 

 

 

 

 

 

문제해결


import java.util.Map;
import java.util.Scanner;
import java.util.TreeMap;

public class B20291 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int n = Integer.parseInt(sc.next());
		Map<String, Integer> map = new TreeMap<>();
		
		for(int i=0;i<n;i++) {
			String input = sc.next();
			String ext = input.substring(input.indexOf(".")+1);
			if(map.containsKey(ext)) {
				int tmp = map.get(ext);
				map.replace(ext, ++tmp);
			} else {
				map.put(ext, 1);
			}
		}
		
		for(String key : map.keySet()) {
			System.out.println(key + " " + map.get(key));
		}

	}

}

1. 집어넣을때마다 자동 정렬되는 TreeMap을 사용한다

2. 입력받은 문자열을 "."을 기준으로 잘라서 map에 집어넣는다

3. 이미 해당 key가 있을 경우 개수를 1 증가시킨다

4. TreeMap은 정렬되어있으니 그대로 출력하면 된다