-
[BOJ] 배부른 마라토너알고리즘 2023. 12. 21. 22:12
문제
마라토너라면 국적과 나이를 불문하고 누구나 참가하고 싶어하는 백준 마라톤 대회가 열린다. 42.195km를 달리는 이 마라톤은 모두가 참가하고 싶어했던 만큼 매년 모두가 완주해왔다. 단, 한 명만 빼고!
모두가 참가하고 싶어서 안달인데 이런 백준 마라톤 대회에 참가해 놓고 완주하지 못한 배부른 참가자 한 명은 누굴까?
풀이
N개만큼의 사람을 Map에 담은 후에 그 후에 나오는 N - 1 개의 사람에 대해서 map에 -1만큼을 반복해준다.
동명이인이 존재하기 때문에 remove가 아닌 -1감소를 해야 한다.
계산 후에 value가 0이면 해당 key를 출력한다.import java.util.*; import java.lang.*; import java.io.*; class Main { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); Map<String, Integer> map = new HashMap<>(); int N = Integer.parseInt(br.readLine()); for(int i = 0; i < N; i++) { String str = br.readLine(); map.put(str, map.getOrDefault(str, 0) + 1); } for(int i = 0; i < N - 1; i++) { String str = br.readLine(); map.put(str, map.get(str) - 1); } for (String s : map.keySet()) { if (map.get(s) != 0) { System.out.println(s); } } } }
728x90'알고리즘' 카테고리의 다른 글
[BOJ] 배열합치기 (0) 2024.01.13 [BOJ] 사이버개강총회 (1) 2023.12.23 [BOJ] 쉽게 푸는 문제 (2) 2023.12.21 [BOJ] 연산자끼워넣기 (0) 2023.12.20 [BOJ] 빗물 (1) 2023.12.19