Maximum Width Ramp
Maximum Width Ramp is a Medium Data Structures and Algorithms interview problem you can solve, run and submit on Thita.ai. It belongs to the Stack Patterns pattern, in the Monotonic Stack subpattern.
Problem statement
A ramp in an integer array nums is a pair (i, j) for which i < j and nums[i] <= nums[j]. The width of such a ramp is j - i.
Given an integer array nums, return the maximum width of a ramp in nums. If there is no ramp in nums, return 0.
Example 1:
Input: nums = [6,0,8,2,1,5] Output: 4 Explanation: The maximum width ramp is achieved at (i, j) = (1, 5): nums[1] = 0 and nums[5] = 5.
Example 2:
Input: nums = [9,8,1,0,1,9,4,0,4,1] Output: 7 Explanation: The maximum width ramp is achieved at (i, j) = (2, 9): nums[2] = 1 and nums[9] = 1.
Constraints:
- 2 <= nums.length <= 5 104
- 0 <= nums[i] <= 5 104
Topics and companies
Topics: Array, Two Pointers, Stack, Monotonic Stack.
Reported in interviews at Facebook.
How to practise Maximum Width Ramp on Thita.ai
Starter code is provided in C, C#, C++, Go, Java, JavaScript and Python. Your solution runs against 5 test cases for this problem, with the AI coach available for a hint when you are stuck rather than a finished answer. The reference solution runs in O(n) time and O(n) space.
Open Maximum Width Ramp in the code editor, or read the Maximum Width Ramp editorial for a worked solution with its approach and complexity analysis.
Where Maximum Width Ramp sits in the DSA pattern sheet
- Stack Patterns pattern guide
- Monotonic Stack subpattern
- The full DSA patterns sheet
- All coding practice problems
Problems related to Maximum Width Ramp
Other problems that use the same Monotonic Stack and Stack Patterns techniques:
- Daily Temperatures — Medium, same subpattern
- Final Prices With a Special Discount in a Shop — Easy, same subpattern
- Find the Most Competitive Subsequence — Medium, same subpattern
- Next Greater Element I — Easy, same subpattern
- Next Greater Element II — Medium, same subpattern
- Online Stock Span — Medium, same subpattern
Preparing your workspace
Progress is saved as you study.