[Baekjoon] 10811 바구니 뒤집기


문제

문제 전문을 여기에 입력.

입력

입력 조건을 여기에 입력.

테스트 케이스 및 예시 결과

문제에서 주어지는 테스트 케이스와 예상 결과를 여기에 입력

해답

import java.util.*;
import java.io.*;

public class Main {

    public static void solution() throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        StringTokenizer st = new StringTokenizer(br.readLine());
        
        int n = Integer.parseInt(st.nextToken());
        int m = Integer.parseInt(st.nextToken());
        String result = "";
        int[] basket = new int[n];

        for (int k = 0; k < n; k++) {
            basket[k] = k + 1;
        }

        for (int k = 0; k < m; k++) {
            st = new StringTokenizer(br.readLine(), " ");
            int i = Integer.parseInt(st.nextToken()) - 1;
            int j = Integer.parseInt(st.nextToken()) - 1;
            int temp = basket[i];

            while (i < j) {
                temp = basket[i];
                basket[i] = basket[j];
                basket[j] = temp;
                i++;
                j--;
            }
        }

        for (int k = 0; k < n; k++) {
            result += basket[k] + " ";
        }

        bw.write(String.valueOf(result));
        bw.flush();
        bw.close();
        br.close();
    }

    public static void main(String[] args) throws IOException {
        solution();
    }
}

풀이

문제 분할

문제를 분할-정복하기 위해 분할한 내용을 여기에 기술

해설

문제에 대한 알고리즘, 자료구조. 풀이에 대한 내용을 여기에 기술