题解 | #简单密码#

简单密码

http://www.nowcoder.com/practice/7960b5038a2142a18e27e4c733855dac

解题思路

使用密码本概念,明文和密文

实现代码

import java.util.Scanner;

/**
 * @author saint
 * @date 2022/5/31
 * @info 简单密码
 **/
public class Main {
    //把密码中出现的小写字母都变成九键键盘对应的数字,而密码中出现的大写字母则变成小写之后往后移一位
    public static void main(String[] args) {
        //使用明文字典和密文字典
        char plainBook [] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789".toCharArray();
        char cipherBook [] ="bcdefghijklmnopqrstuvwxyza222333444555666777788899990123456789".toCharArray();

        Scanner sc = new Scanner(System.in);
        String password = sc.nextLine();
        char[] arr = password.toCharArray();
        int len = arr.length;
        for(int i=0; i<len; i++){
            //小写字母转数字
            if(arr[i] >= 'a' && arr[i] <= 'z'){
                arr[i] = cipherBook[arr[i] - 'a' + 26];
            }
            //大写字母转小写
            if(arr[i] >= 'A' && arr[i] <= 'Z'){
                arr[i] = cipherBook[arr[i] - 'A'];
            }
            //数字和其他不用转
        }
        System.out.println(new String(arr));
    }
}

全部评论

相关推荐

最近经历我的处女面,还是一家大厂,笑自己不自量力,面试官态度特好,问的问题也很专业。好多问题结结巴巴说不出来,还以为自己多厉害呢。跑过去耽误人家时间……😅简历上的写的最好还是实打实,不然一问三不知。
不要卷我了:我的第一次面大厂,前面聊的好好的,直到说让我写道sql,题很简单,但是我完全没准备光刷算法题了,group by后面多写了个字段,我说我写好了面试官笑了一下,后面说要去面下一个同学了
26届校招投递进展
点赞 评论 收藏
分享
05-29 09:02
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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