Class Solution

  • All Implemented Interfaces:

    
    public final class Solution
    
                        

    1024 - Video Stitching.

    Medium

    You are given a series of video clips from a sporting event that lasted time seconds. These video clips can be overlapping with each other and have varying lengths.

    Each video clip is described by an array clips where <code>clipsi = start<sub>i</sub>, end<sub>i</sub></code> indicates that the ith clip started at <code>start<sub>i</sub></code> and ended at <code>end<sub>i</sub></code>.

    We can cut these clips into segments freely.

    • For example, a clip [0, 7] can be cut into segments [0, 1] + [1, 3] + [3, 7].

    Return the minimum number of clips needed so that we can cut the clips into segments that cover the entire sporting event [0, time]. If the task is impossible, return -1.

    Example 1:

    Input: clips = \[\[0,2],4,6,8,10,1,9,1,5,5,9], time = 10

    Output: 3

    Explanation: We take the clips 0,2, 8,10, 1,9; a total of 3 clips.

    Then, we can reconstruct the sporting event as follows:

    We cut 1,9 into segments 1,2 + 2,8 + 8,9.

    Now we have segments 0,2 + 2,8 + 8,10 which cover the sporting event 0, 10.

    Example 2:

    Input: clips = \[\[0,1],1,2], time = 5

    Output: -1

    Explanation: We cannot cover 0,5 with only 0,1 and 1,2.

    Example 3:

    Input: clips = \[\[0,1],6,8,0,2,5,6,0,4,0,3,6,7,1,3,4,7,1,4,2,5,2,6,3,4,4,5,5,7,6,9], time = 9

    Output: 3

    Explanation: We can take clips 0,4, 4,7, and 6,9.

    Constraints:

    • 1 &lt;= clips.length &lt;= 100

    • <code>0 <= start<sub>i</sub><= end<sub>i</sub><= 100</code>

    • 1 &lt;= time &lt;= 100

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
      Solution()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final Integer videoStitching(Array<IntArray> clips, Integer time)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait