vector 조작하기
![](https://velog.velcdn.com/images%2Fneity16%2Fpost%2Fbd6c3140-6c35-44a9-9511-ba7581bb5391%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202021-01-19%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%203.18.13.png)
- vector를 조작하는것에 익숙해지기 위한 문제였다
- v.begin()은 정확히 첫번째 원소를 가리킨다.
- 주의!!
vector<int> temp(array.begin(), array.begin()+1);
sort(array.begin(), array.begin()+1) --> 첫번째 원소만 sort한다!
sort(array.begin(), array.begin()+2) --> 2번째 원소까지 sort!
vector<int> temp(array.begin(), array.begin()+2);
vector<int> temp(array.begin(), array.begin()+5);
- programers에서 해당 오류는 어떤 수를 0으로 나누었을 때 발생하는 오류!
![](https://velog.velcdn.com/images%2Fneity16%2Fpost%2F6055ad92-e2a4-4a64-a85d-43ca60ac91dd%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202021-01-19%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%203.31.17.png)
코드
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> solution(vector<int> array, vector<vector<int>> commands) {
vector<int> answer;
for(int i=0;i<commands.size();i++)
{
vector<int> temp(array.begin()+commands[i][0]-1, array.begin()+commands[i][1]);
sort(temp.begin(), temp.end());
answer.push_back(temp[(commands[i][2]-1) % temp.size()]);
}
return answer;
}