题解 | #简单密码#

简单密码

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

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void async function () {
   
   

    //后移逻辑
    function move(index)
    {
        
        if(index==='z')
        {
            return 'a'
        }
        else
        {
            return String.fromCharCode(index.charCodeAt(0) + 1);
        }
    }

    //小写转数字
    function zh(index)
    {
        let ar=['abc','def','ghi','jkl','mno','pqrs','tuv','wxyz']
        for(let i=0;i<8;i++)
        {
            if(ar[i].includes(index))
            {
                return i+2
            }
        }
    }

    //判定逻辑
    function judge(str){
         //构建字符集
        let rel1=/[a-z]/  //小写
        let rel2=/[A-Z]/  //大写
        let arr=[]
        for(let i of str)
        {
            if(i.match(rel2))//大写改小写,并
            {
               arr.push( move(i.toLowerCase()))
            }
            else if(i.match(rel1))//小写转数字
            {
               arr.push(zh(i))
            }
            else
            {
                arr.push(i)
            }
        }
        return arr.join('')
    }


    while(line = await readline()){
        //拿输入,转化为数组
        let input =line.split('')

        console.log(judge(input))

    }
}()

全部评论

相关推荐

Hello_WordN:咱就是说,除了生命其他都是小事,希望面试官平安,希望各位平时也多注意安全
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务