티스토리 뷰
문제 링크
풀이
간단한 문제였다.
요약하자면,
vector<int> v를 선언하고 공간을 reserve()로 예약한 후,
해당하는 범위를 v에 할당했다.
이후, sort()로 오름차순으로 정렬 후,
해당 index를 answer 컨테이너에 넣어주었다.
더보기
#include <string>
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;
vector<int> solution(vector<int> array, vector<vector<int>> commands) {
vector<int> answer;
for(int i=0; i<commands.size(); i++){
int start = commands[i][0]-1;
int end = commands[i][1];
int index = commands[i][2]-1;
vector<int> v;
v.reserve(end-start+1); // 공간 예약
v.insert(v.end(), array.begin()+start, array.begin()+end); // 잘라서 붙이기
sort(v.begin(), v.end()); // 정렬
answer.push_back(v[index]);
}
return answer;
}
728x90
반응형
'Programmers Solutions > previous' 카테고리의 다른 글
[프로그래머스, C++] H-Index(정렬 파트) (0) | 2020.10.05 |
---|---|
[프로그래머스, C++] 모의고사(완전탐색 파트) (0) | 2020.10.04 |
[프로그래머스, C++] 기능 개발(스택/큐 파트) (0) | 2020.10.04 |
[프로그래머스, C++] 주식 가격(스택/큐 파트) (0) | 2020.10.04 |
[프로그래머스, C++] 가장 큰 수(정렬) (0) | 2020.10.04 |
댓글