본잡 이어가기/BaekJoon

[백준 / Java] 10811번

UMING 2022. 7. 10. 09:10

https://www.acmicpc.net/problem/10811

 

10811번: 바구니 뒤집기

도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2

www.acmicpc.net

 

import java.util.Scanner;

public class Main {
	 public static void main(String[] args) {
		 
		 Scanner scan = new Scanner(System.in);
		 int N = scan.nextInt();
		 int M = scan.nextInt();
		 int cnt =0;
		 int arr [] = new int[N]; //N=arr.length
		 
		 for(int i = 0; i<arr.length; i++) {
			 arr[i]=i+1;//배열의 원소를 1,2,..N으로
		 }
		 
		 for(int i = 0; i<M; i++) {
			 int a = scan.nextInt();
			 int b = scan.nextInt();
			 a=a-1;
			 b=b-1; //배열 index에 맞춰야하니까
			 
			 while(b>a) {
			 cnt = arr[a];
			 arr[a]=arr[b];
			 arr[b]=cnt;//a와 b의 원소 바꿈
			 b--;
			 a++;//이걸 써야 그 사이범위값들도 바뀜
			 }
		 }
		 
		 for(int i = 0; i<arr.length; i++) {
			 System.out.print(arr[i]+" ");
		 }
			 
			    }	
	
}