Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมหาจำนวน Element เพิ่มน้อยสุดเพื่อให้ Sum เท่า Target ใน Python

ให้ nums, k, t Operation: เพิ่ม e ∈ [-k, k] ท้ายลิสต์ หา Operations น้อยสุดทำให้ Sum = t

ตัวอย่าง: nums=[3,1], k=4, t=19 → 4 (เพิ่ม [4,4,4,3])

ขั้นตอน (Math)

  1. diff = |t - sum(nums)|
  2. result = diff // k
  3. ถ้า result*k != diff: result += 1

ตัวอย่างโค้ด

def solve(nums, k, t):
    total = sum(nums)
    diff = abs(t - total)
    result = diff // k
    if result * k != diff:
        result += 1
    return result

nums = [3, 1]
k = 4
t = 19
print(solve(nums, k, t))  # Output: 4

อินพุต

[3, 1], 4, 19

เอาต์พุต

4