알고리즘
[프로그래머스] 완주하지 못한 선수 - java
육빔
2024. 8. 11. 16:42
728x90
반응형
https://school.programmers.co.kr/learn/courses/30/lessons/42576?language=java
문제 설명
해쉬맵을 사용하여 카운트를 해주고 다시 빼준 다음 0이 아닌 경우만 출력해주는 간단한 문제
몰랐던 점
if(map.containsKey(s)){
map.put(s, map.get(s) + 1);
}else{
map.put(s, 1);
위 코드를 getOrDefault 함수로 아래 한줄로 표현가능하다.
map.put(p, map.getOrDefault(p, 0) + 1);
문제 풀이
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
HashMap<String, Integer> map = new HashMap<>();
for(String s : participant){
if(map.containsKey(s)){
map.put(s, map.get(s) + 1);
}else{
map.put(s, 1);
}
}
for(String s : completion){
map.put(s, map.get(s) - 1);
}
String result = "";
for(String key : map.keySet()){
if(map.get(key) != 0){
return key;
}
}
return result;
}
}
728x90
반응형