【思路】 最主要的是子数组中任何2个元素的差必须小于等于n。即在代码排序之后,必须满足
- 按大小排序并划分为3个子数组
- 每3个一组暴力循环即可
class Solution:
def divideArray(self, nums: List[int], k: int) -> List[List[int]]:
nums.sort()
res = []
for i in range(0, len(nums), 3):
if nums[i + 2] - nums[i] > k:
return []
res.append(nums[i : i + 3])
return res