[프로그래머스 / C++] 수열과 구간 쿼리 3

YH·2023년 11월 26일
0

문제

수열과 구간 쿼리 3 : 문제 링크


문제 분석

  • 정수 배열 arr와 2차원 정수 배열 queries이 주어진다. queries의 원소는 각각 하나의 query를 나타내며, [i, j] 꼴이다. 각 query마다 순서대로 arr[i]의 값과 arr[j]의 값을 서로 바꾼다. 위 규칙에 따라 queries를 처리한 이후의 arr를 return
  • 두 원소의 값을 서로 바꾸기 위해 임시로 값을 저장할 정수형 변수 temp를 0으로 초기화. queries의 크기만큼 for loop를 순환하고, temp에 arr내 queries[i]의 0번째 인덱스의 값을 임시로 저장. 그 위치에는 arr내 quereis[i]의 1번째 인덱스의 값을 저장하고, arr내 quereis[i]의 1번째 인덱스에는 tempr값을 저장. 이런 방식으로 arr[i]와 arr[j]의 값을 서로 바꾸고, 최종적으로 저장된 arr를 return

풀이

#include <vector>

using namespace std;

vector<int> solution(vector<int> arr, vector<vector<int>> queries) {
    int temp = 0;
    
    for(int i = 0; i < queries.size(); ++i) {
        temp = arr[queries[i][0]];
        arr[queries[i][0]] = arr[queries[i][1]];
        arr[queries[i][1]] = temp;
    }
    return arr;
}
profile
Keep Recycling Your Dreams

0개의 댓글