## 🌟 문제
[코딩테스트 연습 - 두 개 뽑아서 더하기 \| 프로그래머스 스쿨](https://school.programmers.co.kr/learn/courses/30/lessons/68644)
numbers에서 서로 다른 인덱스에 있는 2개의 수를 뽑아서 더해서 만들 수 있는 모든 수를 구하기. 배열에 담아 오름차순 반환
## 🌟 풀이
1. 2개의 수를 뽑아 더한 수를 Set에 넣는다. (중복을 제거함 (입출력 예 2를 보면 알 수 있음))
2. Set을 배열로 만들고, 오름차순 정렬해서 반환
```javascript
function solution(numbers) {
let answerSet = new Set();
for (let i = 0; i < numbers.length - 1; i++) {
for(let j = i + 1; j < numbers.length; j++) {
answerSet.add(numbers[i] + numbers[j]);
}
}
return [...answerSet].sort((a, b) => a - b);
}
```
> **시간 복잡도**
> 모든 조합을 결정하는데 N<sup>2</sup>
> 만들어진 조합을 정렬하는데 최악의 경우 N<sup>2</sup>log(N<sup>2</sup>)
> 최종 시간 복잡도는 O(N<sup>2</sup>log(N<sup>2</sup>)) 으로 굉장히 좋지 않지만, numbers의 길이가 100이하로 작기 때문에 문제 풀이에는 영향을 주지 않는다.