[TIL] 두개 뽑아서 더하기

이현동·2023년 1월 28일
0

TIL

목록 보기
17/59

문제

정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.

제한 사항

  • numbers의 길이는 2 이상 100 이하입니다.
  • numbers의 모든 수는 0 이상 100 이하입니다.

입출력 예

나의 코드

const solution = (arr) => {
    let array = [];
    let answer = [];
    for (let i = 0; i < arr.length; i++) {
        for (let j = 1; j <= arr.length; j++) {
            if (arr[j] != null && i !== j) {
                array.push(arr[i] + arr[j]);
            }
        }
    }
    answer = new Set([...array]);
    return [...answer].sort((a, b) => a - b);
};

배열에 있는 모든 수를 한번씩 더하기 위해서 중첩 for문을 사용했다. 그리고 중첩된 값들을 new Set으로 삭제를 해주고 sort를 사용해 정렬을 해주었다.

profile
https://hdlee.dev

0개의 댓글