题解 | #MP3光标位置#

MP3光标位置

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

const readline = require("readline");

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
});
// 保存歌曲數量
let num = 0;
// 保存操作命令
let arr = [];
let row = 0;
// 记录当前移动到的歌曲
let cur = 1;
let curList = [];

rl.on("line", function (line) {
    row++;
    if (row === 1) {
        num = Number(line);
        // 初始化当前列表
        if(num < 4){
            for(let i = 1; i <= num; i++){
                // 保存
                curList.push(i)
            }
        }else {
            curList = [1,2,3,4]
        }
    } else {
        arr = line.split("");
        for (let c of arr) {
            if (c === "U") {
                if (cur === 1) {
                    cur = num;
                    // 特殊翻页
                    if(num > 4) curList = [num-3,num-2,num-1,num]
                } else {
                    cur--;
                    if (!curList.includes(cur)) {
                        // 普通翻页
                        curList.pop();
                        curList.unshift(cur);
                    }
                }
            } else {
                if (cur === num) {
                    cur = 1;
                    // 特殊翻页
                    if(num > 4) curList = [1, 2, 3, 4]
                } else {
                    cur++;
                    if (!curList.includes(cur)) {
                        // 普通翻页
                        curList.shift();
                        curList.push(cur);
                    }
                }
            }
        }
        console.log(curList.join(' '));
        console.log(cur);
    }
});

全部评论

相关推荐

11-27 16:41
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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