题解 | #坐标移动#

坐标移动

https://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29

const readline = require('readline')

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
})

rl.on('line', (input) => {
    const operates = input.split(';')
    const regFlag = /^[A|W|S|D]\d+$/
    const regExec = /([A|S|W|D])(\d+)/
    const position = [0, 0]
    operates.map((item) => {
        if (regFlag.test(item)) {
            const result = regExec.exec(item)
            switch(result[1]) {
                case 'A': 
                  position[0] -= Number(result[2])
                  break;
                case 'S': 
                  position[1] -= Number(result[2])
                  break;
                case 'W': 
                  position[1] += Number(result[2])
                  break;
                case 'D': 
                  position[0] += Number(result[2])
                  break;
            }
        }
    })
    console.log(position.join(','))
})

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务