https://school.programmers.co.kr/learn/courses/30/lessons/68644
0. Headers
#include <vector>
#include <set>
1. 알고리즘
- 문제를 보고 Set을 사용하면 Key 값에 중복을 허락하지 않으므로 사용
- 두 값을 더해 Set에 저장하면 중복된 값은 알아서 삭제
vector<int> solution(vector<int> numbers) {
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]);
}
- Set에서 Vector로 변환하기 위해 STL을 사용하여 Vector에 저장
vector<int> solution(vector<int> numbers) {
std::vector<int> answer(temp.begin(), temp.end());
return answer;
}
2. 완성 코드
#include <vector>
#include <set>
using namespace std;
vector<int> solution(vector<int> numbers) {
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]);
std::vector<int> answer(temp.begin(), temp.end());
return answer;
}
'C++ Algorithm & Study > C++ & Algorithm Strategies' 카테고리의 다른 글
[Programmers] 크기가 작은 부분 문자열 (0) | 2023.02.02 |
---|---|
[Programmers] 2016년 (0) | 2023.02.01 |
[Programmers] 시저 암호 (0) | 2023.01.30 |
[Programmers] 기사단원의 무기 (0) | 2023.01.25 |
[Programmers] 멀리 뛰기 (0) | 2023.01.24 |