본문 바로가기

Algorithm/Baekjoon BOJ

[백준][C++] 1547: 공

반응형

 

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

 

1547번: 공

첫째 줄에 컵의 위치를 바꾼 횟수 M이 주어지며, M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 M개의 줄에는 컵의 위치를 바꾼 방법 X와 Y가 주어지며, X번 컵과 Y번 컵의 위치를 서로 바꾸는 것

www.acmicpc.net

 

 

 

 

 


- 문제

 

컵이 1, 2, 3 이렇게 3개가 있는 상태에서 야바위를 했을 때, 첫 공은 1에 있다고 하고 마지막에 공의 위치를 찾는 문제다.

 

 


- 해설

 

입력이 3 1 과 같은 식이면 3번째 컵이랑 1번째 컵의 위치를 바꾼다는 거니깐, 만약 공의 위치가 1이면 공을 3에 넣으면 되고, 3이면 1의 위치에 넣으면 된다.

 

이걸 반복하면 된다.

 

 

 

 


- 풀이

#include <iostream>
using namespace std;

int main()
{
    int N, tempOne, tempTwo, ball = 1;

    cin >> N;

    for (int i = 0; i < N; i++)
    {
        cin >> tempOne >> tempTwo;
        if (tempOne == ball)
        {
            ball = tempTwo;
        }
        else if (tempTwo == ball)
        {
            ball = tempOne;
        }
    }
    cout << ball;
    return 0;
}

 

 


- 새롭게 알게 된 점

 

반응형

'Algorithm > Baekjoon BOJ' 카테고리의 다른 글

[백준][C++] 1707: 이분 그래프  (0) 2023.02.02
[백준][C++] 7569: 토마토  (0) 2023.01.19
[백준][C++] 7576: 토마토  (0) 2023.01.19
[백준][C++] 7562: 나이트의 이동  (0) 2023.01.18
[백준][C++] 1697: 숨바꼭질  (0) 2023.01.18