1class Solution:2def minPatches(self, nums: List[int], n: int) -> int:3# pre-process for convenience4nums.append(n + 1)5t = 16sum = 17rs = 08if nums[0] != 1:9nums = [1] + nums10rs += 111# the idea is sum from index 0 to index i should cover 1 to that sum*2 then we go form left to right to cover upto n12while sum < n:13if sum < nums[t] - 1:14sum += sum + 115rs += 116else:17sum += nums[t]18t += 119return rs