Information Security Study

[백준] 10813: 공 바꾸기 본문

Programming/C

[백준] 10813: 공 바꾸기

gayeon_ 2024. 1. 10. 12:54

먼저 첫 줄에 바구니 개수, 공을 교환할 횟수를 입력한다.

두 번째 줄부터 m번 줄까지는 공을 교환할 바구니 번호를 입력한다.

 

입력을 마친 후

교환이 끝난 바구니에 들어있는 공의 번호를 배열 순서대로 출력한다.

 

 

 

#include <stdio.h>

int main() {

    int ary[100] = {0};
    int tmp[100] = {0};
    int n;
    int m;
    int a;
    int b;

    scanf("%d %d", &n, &m);
    
    for(int i = 1; i <= n; i++) {
        ary[i] = i;
    }
    
    for(int i = 0; i < m; i++) {
         scanf("%d %d\n", &a, &b);
         tmp[a] = ary[a];
         ary[a] = ary[b];
         ary[b] = tmp[a];
    }


    for(int i = 1; i <= n; i++) {
        printf("%d ", ary[i]);
    }
    return 0;
 }

두 요소를 교환해야 하기 때문에 tmp라는 임시 변수를 사용했다.

tmp로 두 바구니에 들어있는 공을 교환하고

순차적으로 배열의 모든 요소를 출력하면 된다.

 

'Programming > C' 카테고리의 다른 글

[백준] 3052: 나머지  (0) 2024.01.10
[백준] 5597: 과제 안 내신 분..?  (0) 2024.01.10
[백준] 10810: 공 넣기  (1) 2024.01.10
[백준] 2526: 최댓값  (0) 2024.01.10
[백준] 10818: 최소, 최대  (0) 2024.01.10