কম্পিউটার

পাইথনে একাধিকবার স্টক মার্কেটে কেনার মাধ্যমে আমরা সর্বাধিক লাভ পেতে পারি তা খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের কাছে কালানুক্রমিক ক্রমানুসারে একটি কোম্পানির স্টক মূল্যের প্রতিনিধিত্বকারী দামের একটি তালিকা আছে, আমাদের খুঁজে বের করতে হবে যে স্টকটি যে কোনো সংখ্যক বার ক্রয় এবং বিক্রি করে আমরা সর্বাধিক লাভ করতে পারতাম। আমাদের মনে রাখতে হবে যে বিক্রি করার আগে আমাদের অবশ্যই কিনতে হবে।

সুতরাং, ইনপুট যদি দামের মত হয় =[10, 50, 30, 40, 60], তাহলে আউটপুট হবে 70, যেমন আমরা 10-এ কিনতে পারি, 50-এ বিক্রি করতে পারি, 30-এ কিনতে পারি এবং 60-এ বিক্রি করতে পারি। পি>

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • prev_price :=infinity
  • লাভ :=0
  • প্রতিটি p দামের জন্য, করুন
    • যদি p> prev_price, তারপর
      • লাভ :=মুনাফা + p - prev_price
    • prev_price :=p
  • মুনাফা ফেরত

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

class Solution:
   def solve(self, prices):
      prev_price = float("inf")
      profit = 0
      for p in prices:
         if p > prev_price:
            profit += p - prev_price
            prev_price = p
      return profit
ob = Solution()
print(ob.solve([10, 50, 30, 40, 60]))

ইনপুট

[10, 50, 30, 40, 60]

আউটপুট

70

  1. পাইথনে আমরা কতগুলো উপায়ে সিঁড়ি বেয়ে উঠতে পারি (সর্বাধিক k বারে সর্বোচ্চ ধাপ) খুঁজে বের করার প্রোগ্রাম

  2. পাইথনের ক্ষমতার মধ্যে বিভিন্ন আইটেম গ্রহণ করে আমরা সর্বাধিক পরিমাণ খুঁজে পেতে প্রোগ্রামটি পেতে পারি

  3. পাইথনে একবার স্টক মার্কেটে কেনার মাধ্যমে আমরা সর্বাধিক লাভ পেতে পারি তা খুঁজে বের করার প্রোগ্রাম

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