মনে করুন nums নামক একটি অ্যারে এবং limit, goal নামক দুটি মান আছে। অ্যারেটি বিশেষ কারণ |nums[i]| <= limit সব i-এর জন্য 0 থেকে অ্যারি সাইজ - ১ পর্যন্ত। আমাদের অ্যারেতে ন্যূনতম কতগুলো এলিমেন্ট ইনসার্ট করতে হবে যাতে অ্যারির সম্মান goal-এর সমান হয়। অ্যারের এলিমেন্ট লিমিট ভ্যালু ছাড়া যাবে না।
যেমন, ইনপুট nums = [2,-2,2], limit = 3, goal = -4 হলে, আউটপুট হবে ২ কারণ আমরা দুটি (-3) যোগ করতে পারি, তাহলে অ্যারে হবে [2,-2,2,-3,-3]
সমাধান পদ্ধতি
এই সমস্যাটি সমাধান করতে নিচের ধাপগুলো অনুসরণ করুন:
s := nums-এ থাকা সব এলিমেন্টের যোগফল
ab := |goal - s|
ceil(ab / limit) রিটার্ন করুন
উদাহরণ
নিচের ইমপ্লিমেন্টেশনটি দেখুন আরও ভালো বোঝার জন্য:
from math import ceil def solve(nums, limit, goal): s = sum(nums) ab = abs(goal - s) return ceil(ab / limit) nums = [2,-2,2] limit = 3 goal = -4 print(solve(nums, limit, goal))
ইনপুট
[2,-2,2], 3, -4
আউটপুট
2.0