정수 배열 arr
와 2차원 정수 배열 queries
이 주어집니다. queries
의 원소는 각각 하나의 query
를 나타내며, [i, j]
꼴입니다.
각 query
마다 순서대로 arr[i]
의 값과 arr[j]
의 값을 서로 바꿉니다.
위 규칙에 따라 queries
를 처리한 이후의 arr
를 return 하는 solution 함수를 완성해 주세요.
arr
의 길이 ≤ 1,000
arr
의 원소 ≤ 1,000,000queries
의 길이 ≤ 1,000
i
< j
< arr
의 길이arr | queries | result |
---|---|---|
[0, 1, 2, 3, 4] | [[0, 3],[1, 2],[1, 4]] | [3, 4, 1, 0, 2] |
입출력 예 #1
arr
가 다음과 같이 변합니다.arr |
---|
[0, 1, 2, 3, 4] |
[3, 1, 2, 0, 4] |
[3, 2, 1, 0, 4] |
[3, 4, 1, 0, 2] |
쿼리가 나오니까 아무것도 못하겠네;; 문제 파악 좀 잘하자
var answer = [...arr];
for(let i=0; i<queries.length; i++){
let box = answer[queries[i][0]]
answer[queries[i][0]]=answer[queries[i][1]];
answer[queries[i][1]]=box
}
return answer;
// 깔끔하다
queries.forEach( ([a,b]) => {
[arr[a],arr[b]] = [arr[b],arr[a]];
})
return arr
for(let [i, j] of queries) {
[arr[i], arr[j]] = [arr[j], arr[i]];
}
return arr;
const swap = ([i, j]) => {
[arr[i], arr[j]] = [arr[j], arr[i]];
};
queries.forEach(swap);
return arr;