题解 | #MP3光标位置#

MP3光标位置

https://www.nowcoder.com/practice/eaf5b886bd6645dd9cfb5406f3753e15

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

void (async function () {
    // Write your code here
    let a = parseInt(await readline());
    let b = await readline();

    let op = b.split("");

    let currentList = [1, 2, 3, 4];
    let current = 1;
    let length = a;
    if (length >= 4) {
        for (let i = 0; i < op.length; i++) {
            if (op[i] == "U") {
                if (current == 1) {
                    current = length;
                    currentList = [
                        current - 3,
                        current - 2,
                        current - 1,
                        current,
                    ];
                } else {
                    current--;
                    if (!currentList.includes(current)) {
                        currentList = currentList.map((item) => item - 1);
                    }
                }
            } else if (op[i] == "D") {
                if (current == length) {
                    current = 1;
                    currentList = [1, 2, 3, 4];
                } else {
                    current++;
                    if (!currentList.includes(current)) {
                        currentList = currentList.map((item) => item + 1);
                    }
                }
            }
        }
    } else {
        currentList = [];
        for (let m = 1; m <= length; m++) {
            currentList.push(m);
        }
        for (let i = 0; i < op.length; i++) {
            if (op[i] == "U") {
                if (current == 1) {
                    current = length;
                } else {
                    current--;
                }
            } else if (op[i] == "D") {
                if (current == length) {
                    current = 1;
                } else {
                    current++;
                }
            }
        }
    }

    console.log(currentList.join(" "));
    console.log(current);
})();

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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