
내가 작성한 코드
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
Arrays.sort(participant);
Arrays.sort(completion);
// 정렬 후 순차비교
for (int i = 0; i < completion.length; i++) {
if (!participant[i].equals(completion[i])) {
return participant[i];
}
}
// 마지막 사람이 완주하지 못한 경우
return participant[participant.length - 1];
}
}
다른 사람의 코드
import java.util.HashMap;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
HashMap<String, Integer> hm = new HashMap<>(); // 중복처리 할 맵
for (String player : participant) hm.put(player, hm.getOrDefault(player, 0) + 1); // 참가자 모두 카운트
for (String player : completion) hm.put(player, hm.get(player) - 1); // 완주자 카운트다운
// 카운트가 0이 아니면 완주하지 못한 사람
for (String key : hm.keySet()) {
if (hm.get(key) != 0){
answer = key;
}
}
return answer;
}
}
Share article