結果
問題 | No.197 手品 |
ユーザー |
![]() |
提出日時 | 2015-04-29 00:19:37 |
言語 | Java (openjdk 23) |
結果 |
WA
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 1,453 bytes |
コンパイル時間 | 3,248 ms |
コンパイル使用メモリ | 78,624 KB |
実行使用メモリ | 50,468 KB |
最終ジャッジ日時 | 2024-06-27 08:15:05 |
合計ジャッジ時間 | 6,869 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 35 WA * 8 |
ソースコード
import java.io.BufferedReader; import java.io.InputStreamReader; public class No197 { public static void main(String[] args) { try { BufferedReader br = new BufferedReader(new InputStreamReader( System.in)); String SBefore = br.readLine(); int N = Integer.parseInt(br.readLine()); String SAfter = br.readLine(); if (dfs(N % 4, SBefore, SAfter)) { System.out.println("FAILURE"); } else { System.out.println("SUCCESS"); } } catch (Exception e) { System.err.println("Error:" + e.getMessage()); } } static boolean dfs(int N, String S, String SAfter) { if (N == 0) { if (S.equals(SAfter)) { return true; } else { return false; } } if (dfs(N - 1, swap(S, true), SAfter)) { return true; } if (dfs(N - 1, swap(S, false), SAfter)) { return true; } return false; } // trueなら左 // falseなら右 static String swap(String S, boolean changeSide) { char[] c = S.toCharArray(); char swap = c[1]; if (changeSide) { c[1] = c[0]; c[0] = swap; } else { c[1] = c[2]; c[2] = swap; } return new String(c); } }