헬린코린이

[백준] 10812번 : 바구니 순서 바꾸기 - JAVA 본문

Programming/Coding Test Practice

[백준] 10812번 : 바구니 순서 바꾸기 - JAVA

HCD 2023. 4. 16. 22:09

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main{
   public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		int N = Integer.parseInt(st.nextToken()), M = Integer.parseInt(st.nextToken());
		int[] arrays = new int[N];
		int[] newArrays = new int[N];
		for (int i = 1; i <= N; i++) {
			arrays[i - 1] = i;
		}

		for (int a = 0; a < M; a++) {
			StringTokenizer newSt = new StringTokenizer(br.readLine());
			int i = Integer.parseInt(newSt.nextToken()), j = Integer.parseInt(newSt.nextToken()),
					k = Integer.parseInt(newSt.nextToken());
			int kk = i;
			for (int b = 0; b < j - i + 1; b++) {
				if (k + b <= j) {
					newArrays[b + i - 1] = arrays[k + b - 1];
				} else {
					newArrays[b + i - 1] = arrays[kk - 1];
					kk++;
				}
			}
			System.arraycopy(newArrays, i - 1, arrays, i - 1, j-i+1 );
		}
		for (int i : arrays) {
			System.out.print(i + " ");
		}
	}
}
Comments