题解 | 坐标移动

坐标移动

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

const readline = require("readline");

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
});
rl.on("line", function (line) {
    const str = line;
    const commands: string[] = str.split(";");
    let [x, y] = [0, 0];

    for (let i = 0; i < commands.length; i++) {
        const command = commands[i];
        const dir = command[0];
        const step = command.slice(1);

        if (step.length <= 2 && !isNaN(Number(step))) {
            switch (dir) {
                case "A":
                    x -= Number(step);
                    break;
                case "W":
                    y += Number(step);
                    break;
                case "S":
                    y -= Number(step);
                    break;
                case "D":
                    x += Number(step);
                    break;
                default:
                    break;
            }
        }
    }
    console.log(`${x},${y}`);
});

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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