【Leetcode】2740-1302
前言
不算难的题目,本身的ratijng也不算很高
思路
分为两个数组,一个数组的最小值与另外一个数组的最大值尽可能的接近。
那么就是直接进行排序,然后从中间划开,左边的座位第一个数组,右边的作为第二个数组,此时结果就是切开位置两个元素的差值。由于是排序,所以一定是最小的差值。
只需要遍历切开的位置,判断最小的即可
class Solution:
def findValueOfPartition(self, nums: List[int]) -> int:
nums.sort()
ans = +inf
for i in range(len(nums)-1):
ans = min(ans, nums[i+1]-nums[i])
if ans ==0:break
return ans

浙公网安备 33010602011771号