結果
問題 |
No.2278 Time Bomb Game 2
|
ユーザー |
![]() |
提出日時 | 2023-04-21 23:04:10 |
言語 | Java (openjdk 23) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,544 bytes |
コンパイル時間 | 2,124 ms |
コンパイル使用メモリ | 78,056 KB |
実行使用メモリ | 764,208 KB |
最終ジャッジ日時 | 2024-11-06 16:30:49 |
合計ジャッジ時間 | 8,207 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 6 WA * 2 TLE * 1 MLE * 1 -- * 60 |
ソースコード
import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { static int n; static char[] s; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String[] sa = br.readLine().split(" "); n = Integer.parseInt(sa[0]); int k = Integer.parseInt(sa[1]) - 1; int t = Integer.parseInt(sa[2]); s = br.readLine().toCharArray(); br.close(); char res = dfs(k, t, -2); if (res == 'A') { System.out.println("Alice"); } else { System.out.println("Bob"); } } static char dfs(int k, int t, int p) { if (t == 0) { if (s[k] == 'A') { return 'B'; } else { return 'A'; } } char c = s[k]; if (t % 2 == 1) { if (p != k - 1 && k > 0) { char l = s[k - 1]; if (l != c) { if (k == 1 || s[k - 2] == c) { return c; } if (k < n - 1 || s[k + 1] == c) { return c; } } char res = dfs(k - 1, t - 1, k); if (res == c) { return c; } } if (p != k + 1 && k < n - 1) { char r = s[k + 1]; if (r != c) { if (k == n - 2 || s[k + 2] == c) { return c; } if (k > 0 || s[k - 1] == c) { return c; } } char res = dfs(k + 1, t - 1, k); if (res == c) { return c; } } } else { char res = dfs(k - 1, t - 1, k); if (res == c) { return c; } res = dfs(k + 1, t - 1, k); if (res == c) { return c; } } if (s[k] == 'A') { return 'B'; } else { return 'A'; } } }