July 18, 2023
N개의 숫자로 구성된 비어 있지 않은 배열 A가 주어집니다. 배열은 내림차순이 아닌 순서로 정렬됩니다. 이 배열의 절대 고유 개수는 배열의 요소 중 고유한 절대 값의 수입니다.
예를 들어 배열 A가 다음과 같다고 가정해 보겠습니다:
A[0] = -5
A[1] = -3
A[2] = -1
A[3] = 0
A[4] = 3
A[5] = 6이 배열의 요소에는 0, 1, 3, 5, 6의 5개의 고유 절대값이 있으므로 이 배열의 절대 고유 개수는 5입니다.
함수를 작성합니다:
function solution(A);N개의 숫자로 구성된 비어 있지 않은 배열 A가 주어졌을 때, 배열 A의 절대 고유 개수를 반환하는 함수입니다.
예를 들어, 배열 A가 주어졌을 때
A[0] = -5
A[1] = -3
A[2] = -1
A[3] = 0
A[4] = 3
A[5] = 6인 경우 함수는 위에서 설명한 대로 5를 반환해야 합니다.
다음 가정에 대한 효율적인 알고리즘을 작성합니다:
배열의 요소를 절대값으로 변경후 Set 을 이용하여 중복된 요소를 제거한다.
function solution(A) {
const arr = A.map((value) => {
return Math.abs(value);
});
const set = new Set(arr);
return set.size;
}