[Programmers] 두 개 뽑아서 더하기 Javascript

문제 설명

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

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

문제 풀이

function solution(numbers) {
  const result = [];
  
  for(let i = 0; i < numbers.length; i++) {
    for(let j = i + 1; j < numbers.length; j++) {
      const prev = numbers[i] + numbers[j]
      if(result.indexOf(prev) < 0) {
        result.push(prev);
      }
    }
  }
  result.sort((a, b) => a - b);
  return result;
}

사용 Method

  • Array.prototype.indexOf(element) : 배열 내 찾고자 하는 요소의 첫 index 값이 있으면 최초로 발견된 index를 반환하고 요소가 없으면 -1을 반환함.

  • Array.prototype.push(element) : 배열 마지막 요소로 element를 추가함.

  • Array.prototype.sort() : 배열의 요소를 정렬한 후 정렬한 배열을 반환. 기본 정렬 순서는 문자열의 유니코드 코드 포인트를 따름.

좋은 웹페이지 즐겨찾기