euisblue
68644. 두 개 뽑아서 더하기

Level 1 두 개 뽑아서 더하기

시간 복잡도: O(N^2)

1#include <bits/stdc++.h> 2using namespace std; 3 4vector<int> solution(vector<int> numbers) { 5 vector<int> answer; 6 7 const int SIZE = numbers.size(); 8 for(int i=0; i<SIZE-1; ++i) { 9 for(int j=i+1; j<SIZE; ++j) 10 answer.push_back(numbers[i] + numbers[j]); 11 } 12 13 sort(answer.begin(), answer.end()); 14 auto it = unique(answer.begin(), answer.end()); 15 answer.erase(it, answer.end()); 16 return answer; 17}

7~11번 라인에서 모든 값을 찾아 배열에 차곡차곡 쌓아줍니다 (사실 여기서 set을 사용해서 바로 중복을 제거해도 된다).

13번 라인에서 오름순으로 정렬을 한 다음, 14~15번 라인에서 중복을 제거해준다.