코테공부
코드 싸개 탈출기 (1)
plunder-incorporated
2021. 6. 27. 13:44
코딩테스트 연습 - 완주하지 못한 선수
수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수
programmers.co.kr
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
//해시맵은 키가 만약에 같으면 그 키에다가 넣어 버린다는 것을 명심하자
HashMap<String,Integer> participantMap = new HashMap();
String answer = "";
for(String player: participant)
participantMap.put(player,participantMap.getOrDefault(player,0)+1);
for(String player: completion)
participantMap.put(player, participantMap.getOrDefault(player,0)-1);
for(String key : participantMap.keySet()){
if(participantMap.get(key)!=0){
answer = key;
}
}
return answer;
}
}
해시맵을 처음써봐서 오래걸렸다.
소트를 해서 비교하는 방법도 생각해 보았으나 자료구조 공부를 겸하고 있으므로 꾸득꾸득 해시맵을 이용한 해결법을생각해 내서 풀어보았다.