일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- SW Expert Academy
- Spring JPA
- spotify
- 자바
- SWEA
- java
- 회원가입
- MYSQL
- linux
- python
- programmers
- Baekjoon
- modern c++
- spring boot
- 백준
- Computer Science
- Spring
- 프로그래머스
- 파이썬
- regression
- c
- C++
- Spotify Api
- 회귀
- SECS
- SECS-II
- SECS/GEM
- CS
- Gem
- 스포티파이
Archives
- Today
- Total
비버놀로지
[Programmers 프로그래머스] 68644 두 개 뽑아서 더하기 (C/C++) 본문
728x90
programmers.co.kr/learn/courses/30/lessons/68644
문제 설명
정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.
제한사항
- numbers의 길이는 2 이상 100 이하입니다.
- numbers의 모든 수는 0 이상 100 이하입니다.
입출력 예
numbers | result |
[2,1,3,4,1] | [2,3,4,5,6,7] |
[5,0,2,7] | [2,5,7,9,12] |
입출력 예 설명
입출력 예 #1
- 2 = 1 + 1 입니다. (1이 numbers에 두 개 있습니다.)
- 3 = 2 + 1 입니다.
- 4 = 1 + 3 입니다.
- 5 = 1 + 4 = 2 + 3 입니다.
- 6 = 2 + 4 입니다.
- 7 = 3 + 4 입니다.
- 따라서 [2,3,4,5,6,7] 을 return 해야 합니다.
입출력 예 #2
- 2 = 0 + 2 입니다.
- 5 = 5 + 0 입니다.
- 7 = 0 + 7 = 5 + 2 입니다.
- 9 = 2 + 7 입니다.
- 12 = 5 + 7 입니다.
- 따라서 [2,5,7,9,12] 를 return 해야 합니다.
vector에 모든 합을 넣어줍니다. 그렇게 만들어진 asnwer을 정렬을 해주고,
중복을 뒤로 밀고, 밀린 값들을 제거해 줍니다.
#include <string>
#include <vector>
#include <iostream>
#include <functional>
#include <algorithm>
#include <unordered_map>
using namespace std;
vector<int> solution(vector<int> numbers) {
vector<int> answer;
for (size_t i = 0; i < numbers.size(); i++)
{
for (size_t j = i+1; j < numbers.size(); j++)
{
answer.push_back(numbers.at(i)+numbers.at(j));
}
}
sort(answer.begin(),answer.end()); //먼저 정렬을 해주고,
answer.erase(unique(answer.begin(),answer.end()),answer.end()); //중복된 것을 뒤로 보내고, erase를 이용해서 지워 줍니다.
return answer;
}
728x90
'ALGORITM > JAVA' 카테고리의 다른 글
[Programmers 프로그래머스] 42746 가장 큰 수 (C/C++) (0) | 2021.04.01 |
---|---|
[Programmers 프로그래머스] 12943 콜라츠 추측 (C/C++) (0) | 2021.04.01 |
[Programmers 프로그래머스] 72411 메뉴 리뉴얼 (C/C++) (0) | 2021.03.31 |
[Programmers 프로그래머스] 42883 큰 수 만들기 (java) (0) | 2021.03.31 |
[Programmers 프로그래머스] 60057 문자열 압축 (java) (0) | 2021.03.30 |
Comments