백준 알고리즘

4. 1차원 배열 - 6 (10813번)

IT의 큰손 2023. 3. 1. 22:16
728x90

★ 문제

  • 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 바구니에는 공이 1개씩 들어있고, 처음에는 바구니에 적혀있는 번호와 같은 번호가 적힌 공이 들어있다.
  • 도현이는 앞으로 M번 공을 바꾸려고 한다. 도현이는 공을 바꿀 바구니 2개를 선택하고, 두 바구니에 들어있는 공을 서로 교환한다.
  • 공을 어떻게 바꿀지가 주어졌을 때, M번 공을 바꾼 이후에 각 바구니에 어떤 공이 들어있는지 구하는 프로그램을 작성하시오.

★ 소스코드

import java.util.Arrays;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		
		Scanner scan = new Scanner(System.in);
		
		int size = scan.nextInt();
		int num = scan.nextInt();
		
		int [] nums = new int[size];
		
		for(int i=0; i<size; i++) {
			nums[i] = i+1;
		}
		
		for(int i=0; i<num; i++) {
			
			int beforeNum = scan.nextInt()-1;
			int afterNum = scan.nextInt()-1;
			int temp = 0;
			
			temp = nums[beforeNum];
			nums[beforeNum] = nums[afterNum];
			nums[afterNum] = temp;

		}
		
		for(int i=0; i<size; i++) {
			System.out.print(nums[i]+ " ");
		}
	}
}
728x90