코딩 테스트/프로그래머스

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

위시리 2024. 8. 7. 00:36

Lv 0

1. 문제 탐색

 

2. 코드 설계

 

3. 기타

자바에서는 두 값을 변환할 때 tmp 변수를 이용해서 변환해줘야 하지만 파이썬은 다음과 같이 간단하게 변환할 수 있다.

#     tmp = arr[t1]
#     arr[t1] = arr[t2]
#     arr[t2] = tmp

# 인덱스 t1과 t2의 값 교환
arr[t1], arr[t2] = arr[t2], arr[t1]

 

sol_1) 처음 코드를 아래와 같이 작성했는데 i 가 queries의 갯수에 따라서 정수로 입력되는 줄 알았는데 i는 queries 리스트의 요소이다. 그 값을 그 다음에 인덱스로 쓰려고 하니 당연히 에러가 발생.. 파이썬 언어 공부가 시급하다.

for i in queries: 
    t1 = queries[i][0]
    t2 = queries[i][1]

 

4. 최종 정답 코드

def solution(arr, queries):

    for t1, t2 in queries:
        arr[t1], arr[t2] = arr[t2], arr[t1]

    return arr