정수 배열 arr
와 2차원 정수 배열 queries
이 주어집니다. queries
의 원소는 각각 하나의 query
를 나타내며, [i, j]
꼴입니다.
각 query
마다 순서대로 arr[i]
의 값과 arr[j]
의 값을 서로 바꿉니다.
위 규칙에 따라 queries
를 처리한 이후의 arr
를 return 하는 solution 함수를 완성해 주세요.
arr
의 길이 ≤ 1,000arr
의 원소 ≤ 1,000,000queries
의 길이 ≤ 1,000i
< 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]
def solution(arr, queries): for i in queries: sw = arr[i[0]] arr[i[0]] = arr[i[1]] arr[i[1]] = sw return arr
코드 간단 소개
- for문으로 queries를 돈다.
- sw 에 i에 해당하는 arr 값을 담는다. arr[i[0]]
- arr[i[0]]에 j에 해당하는 arr값을 넣는다. arr[i[1]]
- arr[i[1]]에 i에 해당하는 값을 저장한 sw를 넣는다.
def solution(arr, queries): for a,b in queries: arr[a],arr[b]=arr[b],arr[a] return arr
- for문으로 queries를 돌 때 query의 각 값을 a, b로 넣는다.
- arr[a], arr[b] = arr[b], arr[a]로 작성하여 arr[a]에 arr[b]를, arr[b]에 arr[a]를 넣는다.