vector 조작하기
- 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으로 나누었을 때 발생하는 오류!
코드
#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;
}