问题如下:在给定整数数组A的情况下,斜坡是一个元组(i,j),其i 找到A中坡道的最大宽度。如果不存在,则返回0。 解决方案如下:对于A [i] = v之类的所有元素,让我们以其值v的排序顺序编写索引i。例如,当A [0] = 7,A [1] = 2,A [2] = 5,A [3] = 4,我们可以写出索引i = 1,i = 3,i = 2,i = 0的顺序。 然后,每当我们编写索引i时,我们都知道存在宽度i的斜率-min(indexes_previously_write)(如果该数量为正)。我们可以跟踪以前写为m的所有索引中的最小值。 这是leetcode提供的解决方案之一。但是,我不了解此解决方案的工作原理,也不知道“ A. getitem ”和“ float('inf)class Solution(object):
def maxWidthRamp(self, A):
ans = 0
m = float('inf')
for i in sorted(range(len(A)), key = A.__getitem__):
ans = max(ans, i - m)
m = min(m, i)
return ans