1. 程式人生 > >[Swift-2019力扣杯春季決賽]1. 有序數組中的缺失元素

[Swift-2019力扣杯春季決賽]1. 有序數組中的缺失元素

color time 一個 result 提示 return turn 缺失 pan

給出一個有序數組 A,數組中的每個數字都是 獨一無二的,找出從數組最左邊開始的第 K 個缺失數字。

示例 1:

輸入:A = [4,7,9,10], K = 1
輸出:5
解釋:
第一個缺失數字為 5 。

示例 2:

輸入:A = [4,7,9,10], K = 3
輸出:8
解釋: 
缺失數字有 [5,6,8,...],因此第三個缺失數字為 8 。

示例 3:

輸入:A = [1,2,4], K = 3
輸出:6
解釋:
缺失數字有 [3,5,6,7,...],因此第三個缺失數字為 6 。

提示:

  1. 1 <= A.length <= 50000
  2. 1 <= A[i] <= 1e7
  3. 1 <= K <= 1e8

692 ms

 1 class Solution {
 2     func missingElement(_ nums: [Int], _ k: Int) -> Int {
 3         var k = k
 4         var n:Int = nums.count
 5         var i:Int = 0
 6         while(i + 1 < n)
 7         {
 8             if nums[i + 1] - nums[i] - 1 >= k
9 { 10 return nums[i] + k 11 } 12 k -= nums[i + 1] - nums[i] - 1 13 i += 1 14 } 15 return nums[n-1] + k 16 } 17 }

[Swift-2019力扣杯春季決賽]1. 有序數組中的缺失元素