이 문제는 hashmap을 활용하는 문제였다.
각 참가자의 이름을 키 그리고 등장 횟수를 value로 저장하고
완주자 명단에서 참가자를 찾아 value를 감소시키고
마지막에 남는 참가자가 완주하지 못한 코드를 작성했다.
package Programmers;
import java.util.*;
public class ProgrammingBasic {
public static void main(String[] args) {
String[] participant = {"leo", "kiki", "eden"};
String[] completion = {"eden", "kiki"};
System.out.println((solution(participant, completion)));
}
public static String solution(String[] participant, String[] completion) {
HashMap<String, Integer> hashMap = new HashMap<>();
for(String player : participant){
hashMap.put(player, hashMap.getOrDefault(player,0) + 1);
}
for(String player : completion) {
hashMap.put(player, hashMap.get(player) - 1);
}
for(String key : hashMap.keySet()){
if(hashMap.get(key) != 0){
return key;
}
}
return null;
}
}