Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts

You are given a rectangular cake of size h x w and two arrays of integers horizontalCuts and verticalCuts where:

  • horizontalCuts[i] is the distance from the top of the rectangular cake to the i^th horizontal cut.
  • verticalCuts[j] is the distance from the left of the rectangular cake to the j^th vertical cut.

Return the maximum area of a piece of cake after you cut at each horizontal and vertical position provided in the arrays horizontalCuts and verticalCuts. Since the answer can be a large number, return this modulo 10^9 + 7.

Example 1
Inputh = 5, w = 4, horizontalCuts = [1,2,4], verticalCuts = [1,3]
Output4
After all cuts, the largest piece has area 4.
Example 2
Inputh = 5, w = 4, horizontalCuts = [3,1], verticalCuts = [1]
Output6
After all cuts, the largest pieces have area 6.

Constraints

  • 2 <= h, w <= 10^9
  • 1 <= horizontalCuts.length <= min(h - 1, 10^5)
  • 1 <= verticalCuts.length <= min(w - 1, 10^5)
  • 1 <= horizontalCuts[i] < h
  • 1 <= verticalCuts[i] < w
  • All the elements in horizontalCuts are distinct.
  • All the elements in verticalCuts are distinct.

Asked at 4 companies

</>

Your Solution

(Ctrl/Cmd + Enter)

Switching Language

Loading template...

Loading...

Sign in to save your progress

AI code evaluation

Get a correctness verdict, missed edge cases, and complexity analysis of your solution.

Sign in to evaluate