반응형
N^2 으로 일일이 찾아가면서 제거할려면 많은 시간이 소요된다.
HashMap으로 탐색시간을 줄여야한다.
package hash;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class h1 {
public String solution(String[] participant, String[] completion) {
StringBuilder answer = new StringBuilder();
Map<String, Integer> hash = new HashMap<String, Integer>();
for (String str : participant) {
if (hash.containsKey(str)) {
int tmp = hash.get(str);
hash.put(str, tmp + 1);
} else {
hash.put(str, 1);
}
}
for (String str : completion) {
int tmp = hash.get(str);
if (tmp == 1) {
hash.remove(str);
} else {
hash.put(str, tmp - 1);
}
}
Set<String> keys = hash.keySet();
answer.append(keys.iterator().next());
return answer.toString();
}
}
반응형
'ProgramSoliving' 카테고리의 다른 글
프로그래머스 : 위장 (0) | 2020.12.11 |
---|---|
프로그래머스 : 전화번호목록 (0) | 2020.12.11 |
백준 : 모노미노도미노 (19235 ,java) (0) | 2020.10.17 |
백준 : 19237 어른상어 java (0) | 2020.10.08 |
백준 : 19238 스타트 택시 (JAVA) (0) | 2020.10.07 |