কম্পিউটার

পাইথনে অনন্য উপাদান সহ দীর্ঘতম ধারাবাহিক সাবলিস্টের দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের কাছে সংখ্যা নামক সংখ্যার একটি তালিকা আছে, যেখানে সমস্ত উপাদান অনন্য। আমাদের দীর্ঘতম সাবলিস্টের দৈর্ঘ্য খুঁজে বের করতে হবে যাতে ধারাবাহিক উপাদান রয়েছে।

সুতরাং, যদি ইনপুটটি nums =[3, 6, 7, 5, 4, 9] এর মত হয়, তাহলে আউটপুট হবে 5, কারণ সাবলিস্ট হল [3, 6, 7, 5, 4] এতে পরপর সমস্ত উপাদান রয়েছে 3 থেকে 7 পর্যন্ত।

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

  • ret :=0
  • আমি 0 থেকে সংখ্যার আকার - 1 এর মধ্যে, কর
    • lhs :=সংখ্যা[i]
    • rhs :=সংখ্যা[i]
    • j এর জন্য রেঞ্জ i থেকে সংখ্যার আকার - 1, do
      • lhs :=ন্যূনতম lhs এবং nums[j]
      • rhs :=সর্বাধিক rhs এবং nums[j]
      • যদি (rhs - lhs) একই হয় (j - i), তাহলে
        • ret :=ret এর সর্বোচ্চ এবং (j - i + 1)
  • রিটার্ন রিটার্ন

উদাহরণ

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

def solve(nums):
   ret = 0
   for i in range(len(nums)):
    lhs = nums[i]
   rhs = nums[i]
   for j in range(i, len(nums)):
      lhs = min(lhs, nums[j])
      rhs = max(rhs, nums[j])
      if rhs - lhs == j - i:
          ret = max(ret, j - i + 1)
   return ret

nums = [3, 6, 7, 5, 4, 9]
print(solve(nums))

ইনপুট

[3, 6, 7, 5, 4, 9]

আউটপুট

1

  1. পাইথনে একটি বাইনারি গাছের দীর্ঘতম ধারাবাহিক পথের দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম

  2. পাইথনে দীর্ঘতম স্বতন্ত্র সাবলিস্টের দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম

  3. পাইথনে দীর্ঘতম ধারাবাহিক অনুক্রমের দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম

  4. পাইথনে ধারাবাহিক সাধারণ অক্ষর সহ সাবস্ট্রিংয়ের দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম