문제 설명
https://school.programmers.co.kr/learn/courses/30/lessons/42576

제한 사항

입출력 예

풀이
import java.util.Arrays;
class Solution {
public String solution(String[] participant, String[] completion) {
Arrays.sort(participant);
Arrays.sort(completion);
for (int i = 0; i < participant.length - 1; i++)
if (!participant[i].equals(completion[i])) return participant[i];
return participant[participant.length - 1];
}
}
후기
카테고리가 해시로 들어가 있긴 하지만 굳이 카테고리를 따라가야하나 싶긴 한데 해당 풀이 방법으로는 HashMap을 사용하는 방법이 있다. 나는 순회 하면서 HashMap에 값을 입력하는게 더 느릴 줄 알았는데 다른 사람 풀이를 보니까 시간 복잡도 면에서 put(하나씩 입력)하는 것과 Arrays.sort(퀵소트)를 비교하니 해쉬맵이 유리하다고 한다. 통과하긴 했지만 다음에는 조금 더 나은 방법을 생각하고 풀어야겠다.
'코딩테스트 (프로그래머스) > Java' 카테고리의 다른 글
| [프로그래머스][JAVA][Lv. 1] [1차] 비밀지도 (0) | 2023.07.22 |
|---|---|
| [프로그래머스][JAVA][Lv. 1] [1차] 다트 게임 (0) | 2023.07.22 |
| [프로그래머스][JAVA][Lv. 1] K번째수 (0) | 2023.07.19 |
| [프로그래머스][JAVA][Lv. 1] 기사단원의 무기 (0) | 2023.07.18 |
| [프로그래머스][JAVA][Lv. 2] 연속된 부분 수열의 합 (0) | 2023.07.17 |