728x90
https://school.programmers.co.kr/learn/courses/30/lessons/42576?language=java
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 설명
해쉬맵을 사용하여 카운트를 해주고 다시 빼준 다음 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 |