def LRU(pages, maxNum):
    temp = []
    times = 0
    for page in lst:
        num = len(temp)
        if num < 3:
            times += 1
            temp.append(page)
        elif num == 3:            
            if page in temp:     #要访问的新页面已在主存块中
                #处理“主存块”，把最新访问的页面交换到列表尾部
                pos = temp.index(page)  #要访问的新页面已在主存块中的索引
                temp = temp[:pos] + temp[pos+1:] + [page]
            else:
                #把最早访问的页面踢掉，调入新页面
                temp.pop(0)
                temp.append(page)
                times += 1
    return times



lst = (1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5)
print(LRU(lst, 3))
