Python中的最小范围I

假设我们有一个整数数组A,现在对于每个整数A [i],我们可以选择范围为[-K到K]的任何x,然后将x加到A [i]。现在,在完成此过程之后,我们有了一些数组B。我们必须找到B的最大值和B的最小值之间的最小可能差。

因此,如果输入像A = [0,10],K = 2,那么输出将是6,因为B = [2,8]

为了解决这个问题,我们将遵循以下步骤-

  • MAX:=(A的最大值)-K

  • MIN:=(A的最小值)+ K

  • 差异:= MAX-MIN

  • 如果差<0不为零,则

    • 返回0

  • 否则返回差额

让我们看下面的实现以更好地理解-

示例

class Solution:
   def smallestRangeI(self, A, K):
      MAX = max(A)-K
      MIN = min(A)+K
      difference = MAX-MIN
      if difference <0:
         return 0
      else:
         return difference
ob = Solution()print(ob.smallestRangeI([0,10],2))

输入项

[0,10],2

输出结果

6