白駿Baekjoon 1547号ボール-JAVA
https://www.acmicpc.net/problem/1547
質問する
勢俊は三つのコップを一列に机の上に倒した.コップの番号は一番左のコップから1番、2番、3番の順で、勢俊はこのコップでゲームをします.
まず1番のコップの下にボールを置きます.勢俊は2杯選んで、位置を合わせた.例えば、選択したコップが1番と2番の場合、1番のコップがある位置で2番のコップを移動し、2番のコップがある位置で1番のコップを移動する必要があります.この時点でボールが動かないので、ボールの位置は最初の1番カップの位置と同じです.
勢俊はカップの位置を全部でM回に変え、カップの位置を変える方法を入力とします.位置をM番に変更したら、ボールがあるコップの番号を取得するプログラムを作成してください.
入力
1行目において、カップの位置変化回数Mは、50の自然数以下である.2行目から、M行は、X号カップとY号カップの位置を交換することを意味するカップの位置を変更する方法XとYを与える.XとYの値は3以下であってもよく、XとYは同じであってもよい.
カップを移動した後、ボールがカップの外にある場合はありません.
しゅつりょく
1行目のボールがあるカップの番号を出力します.ボールがコップの底に消えない場合は、-1を出力します.
入力例1説明 球の立場から考えると、簡単に解決できます.
質問する
勢俊は三つのコップを一列に机の上に倒した.コップの番号は一番左のコップから1番、2番、3番の順で、勢俊はこのコップでゲームをします.
まず1番のコップの下にボールを置きます.勢俊は2杯選んで、位置を合わせた.例えば、選択したコップが1番と2番の場合、1番のコップがある位置で2番のコップを移動し、2番のコップがある位置で1番のコップを移動する必要があります.この時点でボールが動かないので、ボールの位置は最初の1番カップの位置と同じです.
勢俊はカップの位置を全部でM回に変え、カップの位置を変える方法を入力とします.位置をM番に変更したら、ボールがあるコップの番号を取得するプログラムを作成してください.
入力
1行目において、カップの位置変化回数Mは、50の自然数以下である.2行目から、M行は、X号カップとY号カップの位置を交換することを意味するカップの位置を変更する方法XとYを与える.XとYの値は3以下であってもよく、XとYは同じであってもよい.
カップを移動した後、ボールがカップの外にある場合はありません.
しゅつりょく
1行目のボールがあるカップの番号を出力します.ボールがコップの底に消えない場合は、-1を出力します.
入力例1
4
3 1
2 3
3 1
3 2
サンプル出力13
入力例22
1 2
3 1
サンプル出力22
入力例35
2 3
1 3
2 3
2 1
3 1
**サンプル出力33
入力例49
1 2
3 2
1 2
2 1
2 1
3 2
1 3
3 1
1 2
サンプル出力41
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int loop = Integer.parseInt(scan.nextLine());
int num = 1;
for (int i = 0; i < loop; i++) {
String str[] = scan.nextLine().split(" ");
int x = Integer.parseInt(str[0]);
int y = Integer.parseInt(str[1]);
if (x == num) {
num = y;
} else if (y == num) {
num = x;
}
}
System.out.println(num);
}
}
Reference
この問題について(白駿Baekjoon 1547号ボール-JAVA), 我々は、より多くの情報をここで見つけました https://velog.io/@chamominedev/baekjoon-java-1547-공テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol