题解 | #MP3光标位置#
MP3光标位置
https://www.nowcoder.com/practice/eaf5b886bd6645dd9cfb5406f3753e15
num = int(input().strip()) str1 = input().strip() # re = str1.count("U") - str1.count("D") relistamp = [1]*num for i in range(1,num+1): relistamp[i-1] = i class windows: def __init__(self,listall): self.index1 = 0 self.index2 = self.index1+4 self.listall = listall list1 = self.listall[self.index1:self.index2] def change1(self,a): self.index1 = a self.index2 = a+4 self.list1 = self.listall[self.index1:self.index2] def change2(self,a): self.index2 = a self.index1 = self.index2-4 self.list1 = self.listall[self.index1:self.index2] def relist(self,a,b): self.index1 = a self.index2 = b self.list1 = self.listall[self.index1:self.index2] def dayin(self): for i in self.list1: print(i,end=" ") print() list1 = windows(relistamp) index1 = 0 for i in str1: if i == 'U': index1 -=1 elif i == 'D': index1 +=1 if index1 == -1: index1 = num-1 list1.relist(num-4,num) elif index1 == num: index1 = 0 list1.relist(0,4) if index1 < list1.index1: list1.change1(index1) elif index1 > list1.index2-1: list1.change2(index1+1) list1.dayin() print(relistamp[index1])