题解 | #MP3光标位置#

看题目看了半天,写代码写了半天,一天就这么过去了,我是不是不适合当程序员。。
let n = +readline();
let s = readline();
let index = 1, res = [];
for(let i = 0; i < s.length; i++) {
    let key = s[i];
    if(n <= 4) {
        if(key == 'U') {
            if(index == 1) {
                index = n;
            } else {
                index = index - 1;
            }
        }
        if(key == 'D') {
            if(index == n) {
                index = 1;
            } else {
                index = index + 1;
            }
        }
        res = getStr(1, n);
    }
    if(n > 4) {
        if(key == "U") {
            if(index == 1) {
                index = n;
                res = getStr(n - 3, n);
            } else {
                if(!isFirstPage() && isFirstIndex(index)) {
                    index = index - 1;
                    res = getStr(index, index + 3);
                } else {
                    index = index - 1;
                }
            }
        }
        if(key == "D") {
            if(index == n) {
                index = 1;
                res = getStr(1, 4);
            } else {
                if(isLastIndex(index)) {
                    index = index + 1;
                    res = getStr(index - 3, index);
                } else {
                    index = index + 1;
                }
            }
        }
    }
}
function isFirstPage() {
    return res[res.length - 1] == 4 ? true : false;
}
function isFirstIndex(index) {
    return index == res[0] ? true : false;
}
function isLastIndex(index) {
    return index == res[res.length - 1] ? true : false;
}
function getStr(start, end) {
    let arr = [];
    for(let i = start; i <= end; i++) {
        arr.push(i)
    }
    return arr;
}
console.log(res.join(' '));
console.log(index);


全部评论

相关推荐

勤奋努力的椰子这就开摆:这些经历跟硬件都没啥关系呀
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务