중복 없는 수를 순서대로 뽑는 문제였다. 처음엔 배열을 그냥 돌면서 중복 체크하려고 했는데, 코드가 너무 복잡해졌다. 그러다가 LinkedHashSet을 떠올렸다. 이걸 쓰니까 순서도 유지되고 중복도 제거돼서 딱 맞았다.

Set set = new LinkedHashSet<>();
for(int element : arr){
    set.add(element);
}
for(int i = 0; i < k; i++){
    answer[i] = list.size() > i ? list.get(i) : -1;
}
근데 처음엔 HashSet을 썼다가 순서가 안 맞아서 테스트 케이스가 실패했다. LinkedHashSet으로 바꾸니까 바로 해결됐다. 그리고 k보다 수가 적을 때 -1로 채우는 조건을 깜빡해서 결과가 이상하게 나왔었다. 이 문제로 자료구조 선택이 얼마나 중요한지 다시 느꼈다. 다음엔 문제 조건을 처음부터 꼼꼼히 읽고 자료구조를 신중히 골라야겠다고 다짐했다.