[백준] 20291 파일 정리 (

AI·2025년 10월 6일

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

import java.io.*;
import java.util.*;
public class Main {
    static int n;
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        n = Integer.parseInt(br.readLine());
        HashMap<String, Integer> file = new HashMap<>();
        // 확장자 별로 개수
        // 사전 순으로 정렬
        for(int i=0;i<n;i++){
            String name = br.readLine();
            String[] text = name.split("\\.");
            name = text[1];
            if(file.containsKey(name)){
                file.put(name, file.get(name)+1);
            } else{
                file.put(name, 1);
            }
        }
        String[] ans = new String[file.size()];
        int idx = 0;
        for(String f : file.keySet()){
            ans[idx++] = f;
        }
        Arrays.sort(ans);
        for(int i=0;i<ans.length;i++){
            System.out.println(ans[i]+" "+file.get(ans[i]));
        }
    }
}

hashMap - put, get
split(".") = 아무거나라는 의미여서 "\."으로 사용해야 함
file.put(name, file.getOrDefault(name, 0) + 1);

0개의 댓글