참가 신청을 했을 경우 티켓을 배부해주고, 참가할 경우 티켓을 사용하는 개념으로 생각함
참가하지 않았을 경우, 미사용 티켓이 남게 됨
(Map)map.getOrDefault(key, default)
찾는 키(key)가 존재하면 해당 키의 값 반환, 없으면 디폴트 값(default) 반환
사용 이유:
원하는 키(이름)에 해당하는 값이 존재하면 그 값에 +1을 하고, 없으면 새로 1을 넣어주기 위함
import java.util.HashMap;
public class NUM42576 {
public static void main(String[] args) {
String[] participant = {"marina", "josipa", "nikola", "vinko", "filipa"};
String[] completion = {"josipa", "filipa", "marina", "nikola"};
System.out.println(solution(participant, completion));
}
public static String solution(String[] participant, String[] completion) {
String answer = "";
HashMap<String, Integer> tickets = new HashMap();
for(String name : participant) tickets.put(name, tickets.getOrDefault(name, 0)+1);
for(String name : completion) tickets.put(name, tickets.get(name)-1);
for(String name : tickets.keySet()) {if(tickets.get(name) != 0) answer = name; break; }
return answer;
}
}
*다른 분들의 코드를 참고하여 작성했습니다