Giả sử chúng ta có danh sách các số được gọi là num và hai biến khác k và t. Chúng ta hãy xem xét một phép toán trong đó chúng ta chọn một phần tử nói là e trong phạm vi [-k, k] và chèn nó vào nums ở cuối. Chúng tôi phải tìm số lượng phép toán tối thiểu cần thiết để tổng các số bằng với mục tiêu.
Vì vậy, nếu đầu vào là nums =[3, 1] k =4 t =19, thì đầu ra sẽ là 4 vì chúng ta có thể thêm như [3, 1, 4, 4, 4, 3] để có tổng 19 .
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
-
Total:=tổng của tất cả các phần tử có trong nums
-
diff:=| t - tổng số |
-
kết quả:=tầng của (diff / k)
-
nếu kết quả * k không giống với kết quả khác, thì
-
kết quả:=kết quả + 1
-
-
trả về kết quả
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn
def solve(nums, k, t): total = sum(nums) diff = abs(t - total) result = diff // k if result * k != diff: result = result + 1 return result nums = [3, 1] k = 4 t = 19 print(solve(nums, k, t))
Đầu vào
[3, 1], 4, 19
Đầu ra
4