Maximum Width Ramp LeetCode solution in Python
1# Runtime: 635 ms (Top 30.72%) | Memory: 21.1 MB (Top 46.08%)2class Solution:3def maxWidthRamp(self, nums: List[int]):4st = []5n = len(nums)6for i in range(n):7if len(st) == 0 or nums[st[-1]] >= nums[i]:8st.append(i)9print(st)10max_idx = -111for j in range(n - 1, -1, -1):12while len(st) and nums[st[-1]] <= nums[j]:13prev = st.pop()14max_idx = max(max_idx, j - prev)1516return max_idx