Two Best Non-Overlapping Events

You are given a 0-indexed 2D integer array events where events[i] = [startTimei, endTimei, valuei]. The i^th event starts at startTimei and ends at endTimei, and if you attend this event, you will receive a value of valuei.

You can choose at most two non-overlapping events to attend such that the sum of their values is maximized.

Return this maximum sum.

Note that the start time and end time are inclusive: you cannot attend two events where one of them starts and the other ends at the same time. More specifically, if you attend an event with end time t, the next event must start at or after t + 1.

Example 1
Inputevents = [[1,3,2],[4,5,2],[2,4,3]]
Output4
Choose events 0 and 1 for a sum of 2 + 2 = 4.
Example 2
Inputevents = [[1,3,2],[4,5,2],[1,5,5]]
Output5
Choose event 2 for a sum of 5.

Constraints

  • 2 <= events.length <= 10^5
  • events[i].length == 3
  • 1 <= startTimei <= endTimei <= 10^9
  • 1 <= valuei <= 10^6

Asked at 8 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