import java.util.*;
class Solution {
private static final int NOT_FOUND = -1;
public int[] solution(int[] arr, int k) {
int[] answer = new int[k];
Arrays.fill(answer, NOT_FOUND);
Set<Integer> used = new HashSet<>();
int index = 0;
for (int num : arr) {
if (!used.contains(num)) {
answer[index++] = num;
used.add(num);
}
if (index >= k) {
break;
}
}
return answer;
}
}
answer 배열을 생성하고 모든 원소를 -1로 초기화합니다. 이를 통해 반환할 배열의 길이가 k보다 작을 경우 나머지 값들은 -1로 채워집니다.
used라는 Set을 생성합니다. 이 Set은 이미 사용된 숫자를 추적하기 위해 사용됩니다.
index 변수를 0으로 초기화합니다. 이 변수는 answer 배열의 현재 인덱스를 나타냅니다.
배열 arr을 순회하면서 다음 작업을 수행합니다.