본문 바로가기
알고리즘 스터디/[프로그래머스] 월간 코드 챌린지 시즌1

[알고리즘] 두 개 뽑아서 더하기 문제풀이(자바스크립트 javascript)

by 제니운 2022. 7. 20.
728x90

👌 numbers의 i 번째랑, i+1번째를 더한다고 문제를 풀어야 하니까

 

for(let i=0; i<numbers.length; i++){

   for(let j=i+1; j<numbers.length; j++){

}

 

👌 numbers[i]와 numbers[j]를 더해준다

 

let sum = numbers[i] + numbers[j]

 

👌 일단, answer.push(sum)을 하게 되면

 

let sum = numbers[i] + numbers[j]

answer.push(sum)

 

 

 

2,3,3,4,4~~처럼 중복되는 값이 나오기 때문에,

 

👌 이 중복되는 값의 위치가 answer에 없으면! 이라는 함수를 만들어주고 push(sum) 해주면 된다.

 

if(answer.indexOf(sum) === -1)

 

👌 오름차순 정렬해주기

 

answer.sort((a,b) => a-b)

 

 

✅ 최종 코드

 

function solution(numbers) {
    var answer = [];

    for(let i=0; i<numbers.length; i++){
        for(let j = i+1; j < numbers.length; j++){
            let sum = numbers[i] + numbers[j]
            if(answer.indexOf(sum) === -1){
                answer.push(sum)
            }
        }
        answer.sort((a,b) => a-b)
    }
    return answer
}
728x90