Notice
Recent Posts
Recent Comments
Link
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
Tags more
Archives
Today
Total
관리 메뉴

luke

[프로그래머스] - 수열과 구간 쿼리 3 (Java/자바) 본문

알고리즘문제/프로그래머스(Java)

[프로그래머스] - 수열과 구간 쿼리 3 (Java/자바)

luke-king 2026. 2. 8. 20:29

문제 : https://school.programmers.co.kr/learn/courses/30/lessons/181924

 

 

 

 

 

 

 

 

 

 

문제.


 

 

 

 

 

 

 

 

풀이.


class Solution {
    public int[] solution(int[] arr, int[][] queries) {
        for(int[] num : queries){
            int i = num[0];
            int j = num[1];
            
            int temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
            
        }
        
        return arr;
    }
}

오늘 문제는 프로그래머스 "수열과 구간 쿼리 3" 문제다.

문제 접근은 주어진 queries[][]의 값이 arr의 인덱스를 나타내는데 그 인덱스의 값들의 i, j위치를 바꿔서 최종 arr[] 값을 리턴해주면 되는 문제다. 그럼 바로 풀이해보겠다.

 

1. queries 배열의 각 원소를 for-each문으로 꺼내서 그 안에 있는 두 값을 i, j에 저장하고 이 값들을 arr의 인덱스로 사용한다.

 

2. arr[i]와 arr[j]의 값을 서로 바꾸기 위해 먼저 arr[i]를 temp에 저장한 뒤 arr[i]에 arr[j]를 넣고 마지막으로 arr[j]에 temp를 넣어 교환을 완료한다. 그럼 끝이다.