题解 | 简单密码

简单密码

https://www.nowcoder.com/practice/ff99c43dd07f4e95a8f2f5448da3772a


import java.util.Scanner;

public class Main {
    /**
     * 数字加密
     * <p>
     * START
     * NS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX
     * END
     * START
     * N BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJ
     * END
     * START
     * IFSLJW PSTBX KZQQ BJQQ YMFY HFJXFW NX RTWJ IFSLJWTZX YMFS MJ
     * END
     * ENDOFINPUT
     *
     * @param args
     */
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextLine()) {
            String line = scanner.nextLine();

            if (line.equals("ENDOFINPUT")) {
                break;
            }

            if (line.equals("START")) {
                StringBuilder result = new StringBuilder();

                while (scanner.hasNextLine()) {
                    String content = scanner.nextLine();
                    if (content.equals("END")) {
                        break;
                    }

                    for (int i = 0; i < content.length(); i++) {
                        char c = content.charAt(i);
                        if (c >= 'A' && c <= 'Z') {
                            result.append((char) ('A' + (c - 'A' - 5 + 26) % 26));
                        } else if (c >= 'a' && c <= 'z') {
                            result.append((char) ('a' + (c - 'a' - 5 + 26) % 26));
                        } else {
                            result.append(c);
                        }
                    }
                }

                System.out.println(result.toString());
            }
        }

        scanner.close();
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务