题解 | #简单密码#

简单密码

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

直接暴力解法就可以了, 简简单单, 但是感觉写的好多

import java.util.Scanner;

/**
 * String.valueOf(a+1);  会使字符失效, 输出不是 b, 而是这个 98 
 */
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String s = scanner.nextLine();
        StringBuilder stringBuilder = new StringBuilder();
        for (int i = 0; i < s.length(); i++) {
            stringBuilder.append(mapper(s.charAt(i)));
        }
        System.out.println(stringBuilder.toString());


    }
    public static String mapper(char c){

        if (c>='a'&&c<='z'){
            if (c>='a'&&c<='c'){
                return "2";
            }else if (c>='d'&&c<='f'){
                return "3";
            }else if (c>='g'&&c<='i'){
                return "4";
            }else if(c>='j'&&c<='l'){
                return "5";
            }else if(c>='m'&&c<='o'){
                return "6";
            }else if(c>='p'&&c<='s'){
                return "7";
            }else if(c>='t'&&c<='v'){
                return "8";
            }else if(c>='w'&&c<='z'){
                return "9";
            }
        }
        if (c>='A'&&c<='Y'){
            return String.valueOf((char)(c+32+1));
        }
        if (c=='Z'){
            return "a";
        }
        // 其他的字符
        return String.valueOf(c);
    }
}

#华为机考#
全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

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