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
반응형
'알고리즘' 카테고리의 다른 글
[프로그래머스] 다단계 칫솔 판매 - java (0) | 2024.08.17 |
---|---|
[프로그래머스] 예상 대진표 - java (0) | 2024.08.12 |
[프로그래머스] 기능개발 - java (0) | 2024.08.11 |
[프로그래머스] 짝지어 제거하기 - java (0) | 2024.08.08 |
[프로그래머스] 괄호 회전하기 - java (0) | 2024.08.08 |