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

이 문제는 말그대로 야바위게임이다.


[전체 코드]
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int M = sc.nextInt(); //섞을 횟수 M 입력
int N = 1; //공이 들어있는 위치 첫번째에 공을 넣기 때문에 1값을 넣어준다.
for(int i=0;i<M;i++) { // M만큼 반복
int X = sc.nextInt();
int Y = sc.nextInt();
if(X == N || Y == N) { // 만약 3과 1을 섞는다면 공의 현재위치가 3이나 1이면
if(X == N) { //3이 같아서 조건문을 통과했다면
N = Y; //현재위치는 1이된다.
}
else N = X; //그렇지않다면 현재위치는 3이된다.
}
}
System.out.println(N);
}
}
[제출 결과]

이번문제는 크게 어려움이 없었다.
중간에 현재위치를 바꾸는 조건문을
N = (X == N) ? Y : X;
와 같이 간단하게 바꿔줄수도 있다.
'Programming > Algorithm(ACM Problems)' 카테고리의 다른 글
| [백준] 1731번 : 추론 / [자바] JAVA / 학습기록 (0) | 2022.01.16 |
|---|---|
| [백준] 1568번 : 새 / [자바] JAVA / 학습기록 (0) | 2022.01.16 |
| [백준] 1371번 : 가장 많은 글자 / [자바] JAVA / 학습기록 (0) | 2022.01.16 |
| [백준] 1264번 : 모음의 개수 / [자바] JAVA / 학습기록 (0) | 2022.01.15 |
| [백준] 1259번 : 팰린드롬수 / [자바] JAVA / 학습기록 (0) | 2022.01.14 |