কম্পিউটার টিউটোরিয়াল

পাইথন প্রোগ্রাম - সব পREFIX সম পজিটিভ হলে শুরুর যোগ করার ন্যূনতম মান বের করুন

মনে করুন nums নামে একটি সংখ্যার লিস্ট আছে। আমাদের ন্যূনতম পজিটিভ মান বের করতে হবে যা nums-এর শুরুর যোগ করলে ফলাফল লিস্টের সব পREFIX সম ০-র চেয়ে বড় হবে।

ইনপুট nums = [3, -6, 4, 3] হলে আউটপুট হবে ৪, কারণ ৪ যোগ করলে লিস্ট হবে [4, 3, -6, 4, 3]। পREFIX সম হবে [4, 7, 1, 5, 8], সব ০-র চেয়ে বড়।

সমাধানের ধাপসমূহ:

  • nums-এ পজিশন ০-এ ০ সন্নিবেশ করুন
  • i = 1 থেকে len(nums) - 1 পর্যন্ত লুপ:
    • nums[i] := nums[i] + nums[i - 1]
  • 1 - min(nums) ফেরত দিন

উদাহরণ

বাস্তবায়ন:

def solve(nums):
    nums.insert(0, 0)
    for i in range(1, len(nums)):
        nums[i] += nums[i - 1]
    return 1 - min(nums)

nums = [3, -6, 4, 3]
print(solve(nums))

ইনপুট

[3, -6, 4, 3]

আউটপুট

4
  1. পাইথনে সব পয়েন্ট কানেক্ট করার ন্যূনতম খরচ বের করার প্রোগ্রাম

  2. পাইথনে শিপমেন্ট সম্পন্ন করার মোট খরচ বের করার প্রোগ্রাম

  3. পাইথনে সব সन्नিহিত সাবলিস্টের যোগফলের যোগফল বের করার প্রোগ্রাম

  4. পাইথনে সব বাস স্টপ পাস করার জন্য ন্যূনতম বাসের সংখ্যা বের করার প্রোগ্রাম