题解 | #MP3光标位置#

MP3光标位置

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

n = int(input())
s = str(input())

l = [i + 1 for i in range(n)]
step = s.count("U") * (-1) + s.count("D")

cur = 1
max = 4
if n <= 4:
    print(" ".join(map(str, l)))
    print(l[step%n])
else:
    for ch in s:
        if ch == "U" and cur == 1:
            cur = n
            max = n
        elif ch == "U":
            if cur == max - 3:
                max -= 1
            cur -= 1
        elif ch == "D" and cur == n:
            cur = 1
            max = 4
        elif ch == "D":
            if cur == max:
                max += 1
            cur += 1
    print(" ".join(map(str, l[max - 4 : max])))
    print(l[cur - 1])

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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