leetcode 908 最小差值

2021-09-25 16:02:52 字數 384 閱讀 8051

因為加上的數是在k到-k範圍內,所以難度小了很多。

### 題目

給定乙個整數陣列 a,對於每個整數 a[i],我們可以選擇任意 x 滿足 -k <= x <= k,並將 x 加到 a[i] 中。

在此過程之後,我們得到一些陣列 b。

返回 b 的最大值和 b 的最小值之間可能存在的最小差值。

### 思路

因為每個數可以加上的範圍是在k到-k之間,所以我們判斷最大的數和最小的數之間的差值是否大於2k,如果不大於,那麼我們可以改變每個陣列元素加上的值,讓它變成乙個所有值都相等的元素,所以結果為0,如果大於2k,那麼就是他們之間的差值減去2k。

### code

int smallestrangei(vector& a, int k)

Leetcode 908 最小差值 I

給定乙個整數陣列 a,對於每個整數 a i 我們可以選擇任意 x 滿足 k x k,並將 x 加到 a i 中。在此過程之後,我們得到一些陣列 b。返回 b 的最大值和 b 的最小值之間可能存在的最小差值。示例 1 輸入 a 1 k 0 輸出 0 解釋 b 1 示例 2 輸入 a 0,10 k 2 ...

leetcode 908 最小差值 I

給定乙個整數陣列a,對於每個整數a i 我們可以選擇任意x滿足 k x k,並將x加到a i 中。在此過程之後,我們得到一些陣列b。返回b的最大值和b的最小值之間可能存在的最小差值。示例 1 輸入 a 1 k 0輸出 0解釋 b 1 示例 2 輸入 a 0,10 k 2輸出 6解釋 b 2,8 示例...

LeetCode 908 最小差值 I

給定乙個整數陣列 a,對於每個整數 a i 我們可以選擇任意 x 滿足 k x k,並將 x 加到 a i 中。在此過程之後,我們得到一些陣列 b。返回 b 的最大值和 b 的最小值之間可能存在的最小差值。示例 1 輸入 a 1 k 0 輸出 0 解釋 b 1 示例 2 輸入 a 0,10 k 2 ...