题解 | #MP3光标位置#

MP3光标位置

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

while 1:
    try:
        n=int(input()) #歌曲数量
        p=input()   #指令(字符串表示'UUUDDD')
        cur=1 #光标
        if n <=4:
            page=[i+1 for i in range(n)]  #当前页
            for i in p:
                if i=='U':
                    cur=n if cur==1 else cur-1
                else: #'D'
                    cur=1 if cur==n else cur+1
        else:   #n>4
            page=[1,2,3,4] #初始页
            for i in p:
                if i=='U':
                    if cur==1:
                        page=[n-3,n-2,n-1,n]
                        cur=n
                    else:
                        page=[x-1 for x in page] if cur==page[0] else page
                        cur-=1
                else: #'D'
                    if cur==n:
                        page=[1,2,3,4]
                        cur=1
                    else:
                        page=[x+1 for x in page] if cur==page[-1] else page
                        cur+=1
        print(' '.join(map(str,page)))
        print(cur)           

    except:
        break

#MP3光标位置#
全部评论

相关推荐

宇算唯航:目测实缴资本不超100W的小公司
点赞 评论 收藏
分享
头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
06-17 00:26
门头沟学院 Java
程序员小白条:建议换下项目,智能 AI 旅游推荐平台:https://github.com/luoye6/vue3_tourism_frontend 智能 AI 校园二手交易平台:https://github.com/luoye6/vue3_trade_frontend GPT 智能图书馆:https://github.com/luoye6/Vue_BookManageSystem 选项目要选自己能掌握的,然后最好能自己拓展的,分布式这种尽量别去写,不然你只能背八股文了,另外实习的话要多投,尤其是学历不利的情况下,多找几段实习,最好公司title大一点的
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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