๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ’ป ๋ฌธ์ œํ’€๊ณ  ์ •๋ฆฌํ•˜๊ธฐ +/๋ฐฑ์ค€

[๋ฐฑ์ค€ Java] 10813: ๊ณต ๋ฐ”๊พธ๊ธฐ

by ์ข…์ด๋นจ๋Œ€ 2023. 9. 6.
TOP

๋ชฉ์ฐจ

    1. ๋ฌธ์ œ

    2. ๋งž์ถ˜์ฝ”๋“œ

    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.io.IOException;
    import java.util.StringTokenizer;
    
    public class bj10813
    {
    	public static void main(String[] args) throws IOException
    	{
    		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    		StringTokenizer st = new StringTokenizer(br.readLine());
    		
    		/*
    		- ๋ณ€์ˆ˜ ์„ค๋ช…
    		N: ๋ฐ”๊ตฌ๋‹ˆ์ˆ˜ 		// ๋ฐฐ์—ด
    		M: ๋ฐ”๊ฟ€ ํšŸ์ˆ˜		// ๋ฐ˜๋ณต๋ฌธ ํšŸ์ˆ˜
    		i: ๊ตํ™˜ ๋ฐ”๊ตฌ๋‹ˆ1		// j์™€ ๊ตํ™˜
    		j: ๊ตํ™˜ ๋ฐ”๊ตฌ๋‹ˆ2		// i์™€ ๊ตํ™˜
    
    		- ์ž…๋ ฅ ํ˜•์‹
    		N M
    		i j
    		i j 
    		*/
    
    		int N, M, i, j;
    
    		N = Integer.parseInt(st.nextToken());
    		M = Integer.parseInt(st.nextToken());
    
    		//System.out.printf("%d %d", N, M);	
    
    		int[] arr = new int[N];
    		
    		// ๋ฐ”๊ตฌ๋‹ˆ์— ๊ณต ๋„ฃ๊ธฐ
    		for(int a=0; a<N; a++)
    		{
    			arr[a] = a+1;
    		}
    		int temp =0;
    		// M๋งŒํผ ๊ตํ™˜
    		for(int a=0; a<M; a++)
    		{
    			st = new StringTokenizer(br.readLine());
    
    			i = Integer.parseInt(st.nextToken())-1;
    			j = Integer.parseInt(st.nextToken())-1;
    
    			//System.out.printf("%d %d", i, j);	
    
    			temp	= arr[i];
    			arr[i]  = arr[j];
    			arr[j]	= temp;
    
    			/*
    			arr[i]=arr[i]^arr[j];
    			arr[j]=arr[j]^arr[i];
    			arr[i]=arr[i]^arr[j];
    			// xor์—ฐ์‚ฐ์€ ๊ฐ™์€ ์ˆ˜ ์ผ ๊ฒฝ์šฐ 0์ด ๋จ
    			*/
    		}
    
    		// ์ถœ๋ ฅ
    		for(int a=0; a<N; a++)
    		{
    			System.out.printf("%d ", arr[a]);		
    		}
    	}
    }
    public class bj5597_1
    {
    	public static void main(String[] args)
    	{
    		System.out.println("1.1 ๋‹ค๋ฅธ ๋ณ€์ˆ˜์—์„œ ๊ฐ™์€ ๊ฐ’ xor swap ---------------");
    		int a1 = 10;
    		int b1 = 10;
    		
    		System.out.printf("์ „) a: %d / b: %d\n",a1,b1);
    
    		a1= a1^b1;
    		b1= b1^a1;
    		a1= a1^b1;
    
    		System.out.printf("ํ›„) a: %d / b: %d\n",a1,b1);
    
    		System.out.println("\n1.2 ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜์—์„œ ๊ฐ’ xor ๋ณ€๊ฒฝ ---------------");
    		int a2 = 10;
    		
    		System.out.printf("์ „) a: %d\n",a2);
    
    		a2= a2^a2;
    		a2= a2^a2;
    		a2= a2^a2;
    
    		System.out.printf("ํ›„) a: %d\n",a2);
    		
    		System.out.println("\n2.1. ๋‹ค๋ฅธ ๋ฐฐ์—ด์—์„œ ๊ฐ™์€ ์ธ๋ฑ์Šค xor ๋ณ€๊ฒฝ ---------------");
    		int[] array_a = {10};
    		int[] array_b = {10};
    		
    		System.out.printf("์ „) arr_a: %d / array_b: %d\n",array_a[0],array_b[0]);
    
    		array_a[0]= array_a[0]^array_b[0];
    		array_b[0]= array_b[0]^array_a[0];
    		array_a[0]= array_a[0]^array_b[0];
    
    		System.out.printf("ํ›„) arr_a: %d / array_b: %d\n",array_a[0],array_b[0]);
    		
    		System.out.println("\n2.2. ํ•˜๋‚˜์˜ ๋ฐฐ์—ด์—์„œ ๊ฐ™์€ ์ธ๋ฑ์Šค xor ๋ณ€๊ฒฝ ---------------");
    		int[] array_me = {10};
    		
    		System.out.printf("์ „) array_me: %d\n",array_me[0]);
    
    
    		array_me[0]= array_me[0]^array_me[0];
    		array_me[0]= array_me[0]^array_me[0];
    		array_me[0]= array_me[0]^array_me[0];
    
    		System.out.printf("ํ›„) array_me: %d\n",array_me[0]);
    
    		/*
    		- ์ •๋ฆฌ: 1. ๋‹ค๋ฅธ ๋ณ€์ˆ˜๋‚˜ ๋ฐฐ์—ด์—์„œ ๊ฐ™์€ ๊ฐ’ swap → ๊ฐ€๋Šฅ
    				2. ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜๋‚˜ ๋ฐฐ์—ด์—์„œ swap → ๋ถˆ๊ฐ€๋Šฅ ( 0 ์ด ๋จ)
    		*/
    
    		//์‹คํ–‰ ๊ฒฐ๊ณผ
    		/*
    		1.1 ๋‹ค๋ฅธ ๋ณ€์ˆ˜์—์„œ ๊ฐ™์€ ๊ฐ’ xor swap ---------------
    		์ „) a: 10 / b: 10
    		ํ›„) a: 10 / b: 10
    
    		1.2 ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜์—์„œ ๊ฐ’ xor ๋ณ€๊ฒฝ ---------------
    		์ „) a: 10
    		ํ›„) a: 0
    
    		2.1. ๋‹ค๋ฅธ ๋ฐฐ์—ด์—์„œ ๊ฐ™์€ ์ธ๋ฑ์Šค xor ๋ณ€๊ฒฝ ---------------
    		์ „) arr_a: 10 / array_b: 10
    		ํ›„) arr_a: 10 / array_b: 10
    
    		2.2. ํ•˜๋‚˜์˜ ๋ฐฐ์—ด์—์„œ ๊ฐ™์€ ์ธ๋ฑ์Šค xor ๋ณ€๊ฒฝ ---------------
    		์ „) array_me: 10
    		ํ›„) array_me: 0
    		๊ณ„์†ํ•˜๋ ค๋ฉด ์•„๋ฌด ํ‚ค๋‚˜ ๋ˆ„๋ฅด์‹ญ์‹œ์˜ค . . .
    		*/
    	}
    }