题解 | #MP3光标位置#
MP3光标位置
https://www.nowcoder.com/practice/eaf5b886bd6645dd9cfb5406f3753e15
n=int(input()) str1=input() # U或者D key=1 # 代表光标的位置 list1=[] # 代表屏幕当前的显示的状态, if n<=3 : for i in range(n): list1.append(i+1) else: list1=[1,2,3,4] if n <=4: for i in str1: if i=='U': if key==1: key=n else: key=key-1 elif i=='D': if key==n: key=1 else: key=key+1 else: for i in str1: if i=='U': if key==1: key=n list1=[n-3,n-2,n-1,n] else: key=key-1 if key not in list1: # 如果检测到光标不在不在当前屏幕了,就要平移屏幕 for jj in range(4): list1[jj]=list1[jj]-1 elif i=='D': if key==n: key=1 list1=[1,2,3,4] else: key=key+1 if key not in list1: for jj in range(4): list1[jj]=list1[jj]+1 for p in range(len(list1)): list1[p]=str(list1[p]) print(' '.join(list1)) print(key)