結果

問題 No.18 うーさー暗号
ユーザー fkwnw3_1243fkwnw3_1243
提出日時 2017-04-23 12:49:40
言語 Java21
(openjdk 21)
結果
AC  
実行時間 54 ms / 5,000 ms
コード長 1,014 bytes
コンパイル時間 2,177 ms
コンパイル使用メモリ 74,944 KB
実行使用メモリ 50,496 KB
最終ジャッジ日時 2024-07-07 06:29:42
合計ジャッジ時間 3,020 ms
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 47 ms
50,244 KB
testcase_01 AC 48 ms
50,252 KB
testcase_02 AC 50 ms
50,156 KB
testcase_03 AC 50 ms
50,376 KB
testcase_04 AC 51 ms
50,332 KB
testcase_05 AC 50 ms
50,016 KB
testcase_06 AC 48 ms
49,940 KB
testcase_07 AC 49 ms
49,936 KB
testcase_08 AC 54 ms
50,496 KB
testcase_09 AC 51 ms
50,240 KB
testcase_10 AC 50 ms
50,312 KB
testcase_11 AC 47 ms
50,124 KB
testcase_12 AC 50 ms
50,264 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String S = reader.readLine();

        StringBuilder builder = new StringBuilder();
        for (int i = 0; i < S.length(); i++) {
            int N = i + 1;
            builder.append(intToChar(charToInt(S.charAt(i)) - N));
        }
        System.out.println(builder.toString());
    }

    private static int charToInt(char c) {
        return (c - 'A') + 1;
    }

    private static char intToChar(int i) {
        i = i % 26;
        if (i == 0) {
            return 'Z';
        } else if (i < 0) {
            char baseCharacter = 'Z';
            return (char) (baseCharacter+i);
        } else {
            char baseCharacter = 'A';
            return (char) (baseCharacter + (i - 1));
        }

    }
}
0