You are given a 2D integer array
groups of length
n. You are also given an integer array
You are asked if you can choose
n disjoint subarrays from the array
nums such that the
ith subarray is equal to
groups[i] (0-indexed), and if
i > 0, the
(i-1)th subarray appears before the
ith subarray in
nums (i.e. the subarrays must be in the same order as
true if you can do this task, and
Note that the subarrays are disjoint if and only if there is no index
k such that
nums[k] belongs to more than one subarray. A subarray is a contiguous sequence of elements within an array.
Input: groups = [[1,-1,-1],[3,-2,0]], nums = [1,-1,0,1,-1,-1,3,-2,0] Output: true Explanation: You can choose the 0th subarray as [1,-1,0,1,-1,-1,3,-2,0] and the 1st one as [1,-1,0,1,-1,-1,3,-2,0]. These subarrays are disjoint as they share no common nums[k] element.
Input: groups = [[10,-2],[1,2,3,4]], nums = [1,2,3,4,10,-2] Output: false Explanation: Note that choosing the subarrays [1,2,3,4,10,-2] and [1,2,3,4,10,-2] is incorrect because they are not in the same order as in groups. [10,-2] must come before [1,2,3,4].
Input: groups = [[1,2,3],[3,4]], nums = [7,7,1,2,3,4,7,7] Output: false Explanation: Note that choosing the subarrays [7,7,1,2,3,4,7,7] and [7,7,1,2,3,4,7,7] is invalid because they are not disjoint. They share a common elements nums (0-indexed).
groups.length == n
1 <= n <= 103
1 <= groups[i].length, sum(groups[i].length) <= 103
1 <= nums.length <= 103
-107 <= groups[i][j], nums[k] <= 107