题解 | #简单密码# 构造一个hash表

简单密码

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

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        // while (in.hasNextInt()) { // 注意 while 处理多个 case
        //     int a = in.nextInt();
        //     int b = in.nextInt();
        //     System.out.println(a + b);
        // }
        String str = in.nextLine();
        
        int[] map = new int [26];
        int value = 2;
        int r = 0;
        for(int i=0; i<15; i++){
            map[i] = value;
            r += 1;
            if (r==3){
                value += 1;
                r = 0;
            }
        }
        map[15] = 7;
        map[16] = 7;
        map[17] = 7;
        map[18] = 7;
        map[19] = 8;
        map[20] = 8;
        map[21] = 8;
        map[22] = 9;
        map[23] = 9;
        map[24] = 9;
        map[25] = 9;
        StringBuilder b = new StringBuilder();
        for(char c : str.toCharArray()){
            if (c >= 'a' && c <= 'z'){
                b.append(map[c-'a']);
            } 
            else if (c >= 'A' && c < 'Z'){
                b.append((char)(c + ('a' - 'A'  + 1)));
            }
            else if (c == 'Z'){
                b.append('a');
            }else{
                b.append(c);
            }
        }
        System.out.println(b.toString());
    }
}

全部评论

相关推荐

头像
07-01 18:39
已编辑
门头沟学院 Java
白火同学:我刚出学校那会沟通过最逆天的公司是一家初创公司,老板亲自在BOSS上当HR,说初创公司人没多少,前期比较艰苦,运维实施前后端都得干。问工资有多少,答两千,给技术入股。我寻思我饭都吃不起了,你跟我谈股份。
我的求职精神状态
点赞 评论 收藏
分享
07-10 14:08
已编辑
江西农业大学 Java
拒绝无效加班的小学生...:期望3k吗?java这辈子有了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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