728x90
https://school.programmers.co.kr/learn/courses/30/lessons/42576
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
🤔 문제분석
해시맵 2개를 이용하여 문제를 해결하면된다. 이름은 Key로 Value는 중복될 수 있기때문에 Integer 값을 두어 사람의 이름별로 카운팅한다.
참가자와 도착한 사람을 비교해서 만약 사람의 사람의 수가 1 이상이라면 그 사람의 값을 출력하면된다.
💻 코드
import java.util.HashMap;
import java.util.Map;
public class Solution {
public String solution(String[] participant, String[] completion) {
Map<String, Integer> p = new HashMap<>();
Map<String, Integer> c = new HashMap<>();
for(String a : participant)
{
p.put(a, p.getOrDefault(a, 1) + 1);
}
for(String a : completion)
{
c.put(a, c.getOrDefault(a, 1) + 1);
}
for(String key : c.keySet())
{
p.put(key, p.get(key) - c.get(key));
}
for(String key : p.keySet())
{
if(p.get(key) > 0)
{
return key;
}
}
return "";
}
}
728x90
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 전력망을 둘로 나누기 (0) | 2024.04.13 |
---|---|
[프로그래머스] 베스트 앨범 (0) | 2024.04.10 |
[프로그래머스] 퍼즐조각 채우기 (0) | 2024.04.10 |
[프로그래머스] 2023 Kakao Blind Recruitment : 표병합 (0) | 2023.11.22 |
[프로그래머스] 2023 Kakao Blind Recruitment : 이모티콘 할인행사 (1) | 2023.11.21 |