[C++로 풀이] 두 개 뽑아서 더하기 ⭐

Date:     Updated:

카테고리:

태그:

두 개 뽑아서 더하기

난이도 ⭐

문제

image


풀이

#include <string>
#include <vector>
#include <set>

using namespace std;

vector<int> solution(vector<int> numbers) {
    vector<int> answer;
    set<int> temp;
    
    for(int i = 0; i < numbers.size(); i++)
        for(int j = i + 1; j < numbers.size(); j++)
            temp.insert(numbers[i] + numbers[j]);
    
    for(auto sum : temp)
        answer.push_back(sum);
    
    return answer;
}

set 컨테이너는 중복 원소를 자동으로 제거하고 삽입한다. 심지어 정렬까지 해준다!

따라서 answer의 원소들과 그 뒤에 위치한 원소들을 더한 결과 값을 set 컨테이너에 넣고 set 컨테이너 삽입이 완료되면 중복 제거 + 정렬 이 되어 있다는 것이므로 set 원소를 하나하나 answer에 차례대로 삽입하면 된다.



🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우 
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄

맨 위로 이동하기

Programmers 카테고리 내 다른 글 보러가기

댓글 남기기