結果
問題 | No.18 うーさー暗号 |
ユーザー | yagi2 |
提出日時 | 2017-04-26 12:50:41 |
言語 | Java21 (openjdk 21) |
結果 |
AC
|
実行時間 | 119 ms / 5,000 ms |
コード長 | 950 bytes |
コンパイル時間 | 2,066 ms |
コンパイル使用メモリ | 76,180 KB |
実行使用メモリ | 56,196 KB |
最終ジャッジ日時 | 2023-09-21 12:42:55 |
合計ジャッジ時間 | 4,355 ms |
ジャッジサーバーID (参考情報) |
judge13 / judge12 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 110 ms
55,592 KB |
testcase_01 | AC | 110 ms
55,700 KB |
testcase_02 | AC | 111 ms
53,716 KB |
testcase_03 | AC | 118 ms
56,196 KB |
testcase_04 | AC | 116 ms
55,324 KB |
testcase_05 | AC | 115 ms
55,424 KB |
testcase_06 | AC | 115 ms
55,612 KB |
testcase_07 | AC | 116 ms
56,064 KB |
testcase_08 | AC | 115 ms
55,812 KB |
testcase_09 | AC | 117 ms
55,944 KB |
testcase_10 | AC | 109 ms
55,568 KB |
testcase_11 | AC | 110 ms
55,768 KB |
testcase_12 | AC | 119 ms
55,816 KB |
ソースコード
package yukicoder.No18; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String[] S = sc.next().split(""); StringBuilder ans = new StringBuilder(); List<String> a = new ArrayList<>(Arrays.asList("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")); for (int i = 0; i < S.length; i++) { int tmp = a.indexOf(S[i]) - i - 1; if (tmp >= 0) { ans.append(a.get(tmp)); } else if (-tmp % 26 == 0) { ans.append("A"); } else { tmp = -tmp; tmp %= 26; ans.append(a.get(26-tmp)); } } System.out.println(ans); } }