Python 中的最小范围 I
pythonserver side programmingprogramming更新于 2023/11/9 17:15:00
假设我们有一个整数数组 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
- difference := MAX - MIN
- 如果 difference <0 非零,则
- 返回 0
- 否则返回 difference
让我们看看下面的实现以便更好地理解 −
示例
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