내 코드 (틀림)
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
HashMap<String, Integer> map = new HashMap<>();
for(int i=0; i < completion.length; i++) {
int cnt = 1;
if(map.containsKey(completion[i])) {
cnt = map.get(completion[i]) + 1;
}
map.put(completion[i], cnt);
}
for(int i = 0; i < participant.length; i++) {
if(!map.containsKey(participant[i]) || map.get(participant[i]) != 1) {
answer += participant[i];
}
}
return answer;
}
}
[JAVA] HashMap에 <키워드,개수>의 형태로 넣기
이번에 설명할 메소드는 '키워드의 개수를 새서 hashmap에 담는 기능'을 수행합니다. 프로세스는 다음과 같습니다. ① 배열 arr에 담긴 키워드들을 하나씩 꺼내서 hashmap에 키로 있는지 확인을 한 뒤
data-traveler.tistory.com
위 글 참고해서 이름 갯수를 count해서 얘가 1이 아니면 answer 값이 되게 해보았다.
근데 마지막 테스트 케이스를 통과하지 못 했다....
결국 고민하다가 다른 분들 정답을 확인했다...ㅠ
[알고리즘 / JAVA] 프로그래머스 - 완주하지 못한 선수 [해시]
문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완
junghn.tistory.com
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
HashMap<String, Integer> map = new HashMap<>();
for(String player : participant) {
map.put(player, map.getOrDefault(player, 0) + 1);
}
for(String player : completion) {
map.put(player, map.get(player) - 1);
}
for(String key : map.keySet()) {
if(map.get(key) != 0) {
answer = key;
}
}
return answer;
}
}
✔ hashmap.getOrDefault(Object key, V DefaultValue)
: 찾는 key가 존재하면 해당 key에 매핑되어 있는 값 반환 / 없으면 디폴트 값 반환
✔ hashmap.put(Object key, Object value)
: HashMap에 키와 값 저장
✔ hashmap.get(Object key)
: 지정된 Key 값 반환
✔ hashmap.keySet()
: HashMap에 저장된 모든 키가 저장된 set 반환
(참고)
[Java] HashMap 함수 제대로 알고 사용하기
http://forum.falinux.com/zbxe/?document_srl=570168&mid=lecture_tip&page=1http://arabiannight.tistory.com/entry/%EC%9E%90%EB%B0%94Java-%EC%9E%90%EB%B0%94-HashMap-%EC%9D%B4%EB%9E%80 1. HashMap이란?: HashMap은 Map을 구현한다. Key와 value를 묶어
vaert.tistory.com
[JAVA] Map - getOrDefault 이란? 사용법 및 예제
getOrDefault - 찾는 키가 존재한다면 찾는 키의 값을 반환하고 없다면 기본 값을 반환하는 메서드 사용 방법 getOrDefault(Object key, V DefaultValue) 매개 변수 : 이 메서드는 두 개의 매개 변수를 허용합니
junghn.tistory.com
'코테 > 프로그래머스' 카테고리의 다른 글
[프로그래머스/Lv. 2] 전화번호 목록 (0) | 2023.02.22 |
---|---|
[프로그래머스/Lv. 1] 폰켓몬 (0) | 2023.02.22 |
[프로그래머스/Lv. 2] 가장 큰 수 (0) | 2023.02.21 |
[프로그래머스/Lv. 1] K번째수 (0) | 2023.02.21 |
[프로그래머스/Lv. 1] 가운데 글자 가져오기 (0) | 2023.02.20 |