두개뽑아서더하기

» CordingTest

1단계

두 개 뽑아서 더하기

  • 문제
    두 개 뽑아서 더하기
    두 개 뽑아서 더하기2

  • 풀이
      function solution(numbers) {
          let answer = []; // 정렬안된 정답값
                
          for(let i=0; i<numbers.length; i++) {  // 첫번째 값
              for(let j=0; j<numbers.length; j++) { // 두번째 값
                  if(i !== j) { // i와 j의 값이 겹치지 않게 if문으로 조건을 걸어줌
                      let sum = numbers[i] + numbers[j]; // 변수 sum에 더한값을 넣어줌
                      answer.push(sum);    // answer배열에 더해진 값을 push
                  }
              }
          }
            
          const result = [...new Set(answer)]; // new Set으로 중복된 값 제거
          result.sort((a,b) => { // 오름차순으로 정렬
              return a - b;
          });
            
          return result;
          }
    
    1. 2중 for문을 이용하여 서로 다른 두 숫자를 더한 값을 배열에 담는다.
    2. new Set()으로 중복을 제거
    3. 오름차순 정렬후 return
  • 베스트 풀이
      function solution(numbers) {
          const temp = []
    
          for (let i = 0; i < numbers.length; i++) {
              for (let j = i + 1; j < numbers.length; j++) {
                  temp.push(numbers[i] + numbers[j])
              }
          }
    
          const answer = [...new Set(temp)]
    
          return answer.sort((a, b) => a - b)
      }