prgms.42576 - 완주하지 못한 선수
import java.util.HashMap;
import java.util.Map;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
Map<String, Integer> map = new HashMap<>();
for (String p : participant) {
if (map.containsKey(p)) {
int count = (int) map.get(p);
map.put(p, count + 1);
} else {
map.put(p, 1);
}
}
for (String c : completion) {
if (map.containsKey(c)) {
int count = (int) map.get(c);
if (count <= 1) {
map.remove(c);
} else {
map.put(c, count - 1);
}
}
}
for (String key : map.keySet()) {
answer = key;
}
return answer;
}
}
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);
for (String key : hm.keySet()) {
if (hm.get(key) != 0){
answer = key;
}
}
return answer;
}
}
class Solution {
public String solution(String[] participant, String[] completion) {
Arrays.sort(participant);
Arrays.sort(completion);
int i;
for (i = 0; i < completion.length; i++) {
if (!participant[i].equals(completion[i])) {
return participant[i];
}
}
return participant[i];
}
}
class Solution {
public String solution(String[] participant, String[] completion) {
Map<String, Long> participantMap = Arrays.asList(participant).stream().collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
for (String name : completion) {
Long value = participantMap.get(name) - 1L;
if (value == 0L) {
participantMap.remove(name);
} else {
participantMap.put(name, value);
}
}
return participantMap.keySet().iterator().next();
}
}