백준_20291_파일정리

덤벨로퍼·2023년 12월 17일
0

코테

목록 보기
20/37

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

import java.io.*;
import java.util.*;

public class Main {
    static int N;
    static Map<String, Integer> map = new TreeMap<>();

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        N = Integer.parseInt(br.readLine());

        for (int i = 0; i < N; i++) {
            String str = br.readLine();
            String ex = str.substring(str.indexOf('.') + 1);
            if (map.containsKey(ex)) {
                map.put(ex, map.get(ex) + 1);
            } else {
                map.put(ex, 1);
            }
        }
        
        for (String key : map.keySet()) {
            System.out.println(key + " " + map.get(key));
        }
    }
}

MAP

HashMap과 달리 TreeMap은 순서를 보장!
key를 기준으로 정렬시킴!

  • 동일한 키로 새로운 값을 put하면, 기존 값이 새로운 값으로 대체됨
map.put(ex, map.get(ex) + 1);

map.keySet()

  • Map에 저장된 모든 키(key)들의 Set을 반환 Set<K>
    for (String key : map.keySet()) {
        System.out.println(key + " " + map.get(key));
    }
    Map의 모든 항목을 순회해야 할 때 자주 사용
profile
💪 점진적 과부하로 성장하는 개발자

0개의 댓글