結果
問題 |
No.26 シャッフルゲーム
|
ユーザー |
|
提出日時 | 2024-03-16 16:05:08 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 85 ms / 5,000 ms |
コード長 | 1,824 bytes |
コンパイル時間 | 2,622 ms |
コンパイル使用メモリ | 82,444 KB |
実行使用メモリ | 51,332 KB |
最終ジャッジ日時 | 2024-09-30 04:05:06 |
合計ジャッジ時間 | 4,150 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 10 |
ソースコード
import java.io.*; import java.util.*; import java.util.stream.*; // 処理 class Process { private PrintWriter printWriter; private int N; private int[] P; private int[] Q; Process(PrintWriter printWriter, int N, int[] P, int[] Q) { this.printWriter = printWriter; this.N = N; this.P = P; this.Q = Q; } // 結果を出力 void printResult() throws IOException { int markedIndex = N; for(int i = 0; i < P.length; i++) { if(markedIndex == P[i]) { markedIndex = Q[i]; } else if(markedIndex == Q[i]) { markedIndex = P[i]; } } printWriter.println(markedIndex); } } public class Main { public static void main(String[] args) throws IOException { var bufferedReader = new BufferedReader(new InputStreamReader(System.in)); var printWriter = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out))); // 入力 int N = Integer.parseInt(bufferedReader.readLine().trim()); int M = Integer.parseInt(bufferedReader.readLine().trim()); var input = new int[2]; var P = new int[M]; var Q = new int[M]; for(int m = 0; m < M; m++) { input = Stream.of(bufferedReader.readLine().trim().split("[ ]+")).mapToInt(Integer::parseInt).toArray(); P[m] = input[0]; Q[m] = input[1]; } // Process クラスで処理を行う var process = new Process(printWriter, N, P, Q); process.printResult(); // 各ストリームを閉じる // 出力ストリームを閉じるときに標準出力に文字を出力する bufferedReader.close(); printWriter.close(); } }