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

পাইথনে একই প্রথম অক্ষর দিয়ে সবচেয়ে লম্বা কন্টিগুয়াস সাবলিস্ট বের করার প্রোগ্রাম

একটি লোয়ারকেস স্ট্রিং লিস্ট words দেওয়া আছে। সবচেয়ে লম্বা কন্টিগুয়াস সাবলিস্ট বের করুন যেখানে সব শব্দের প্রথম অক্ষর একই।

উদাহরণ

words = ["she", "sells", "seashells", "on", "the", "sea", "shore"] → আউটপুট: 3

সাবলিস্ট: ["she", "sells", "seashells"] — সবার প্রথম অক্ষর 's'।

এলগরিদম (O(n))

  1. cnt := 1, maxcnt := 0, prev_char := ""
  2. প্রতিটি word এর জন্য:
    • যদি prev_char খালি: prev_char := word[0]
    • অন্যথায় যদি prev_char == word[0]: cnt++
    • অন্যথায়: prev_char := word[0], cnt := 1
    • maxcnt = max(maxcnt, cnt)
  3. maxcnt রিটার্ন করুন।

পাইথন কোড

def solve(words):
    cnt = 1
    maxcnt = 0
    prev_char = ""
    for word in words:
        if prev_char == "":
            prev_char = word[0]
        elif prev_char == word[0]:
            cnt += 1
        else:
            prev_char = word[0]
            cnt = 1
        maxcnt = max(maxcnt, cnt)
    return maxcnt

words = ["she", "sells", "seashells", "on", "the", "sea", "shore"]
print(solve(words))  # আউটপুট: 3

ইনপুট / আউটপুট

["she", "sells", "seashells", "on", "the", "sea", "shore"]
3
  1. পাইথনে বদলাফালা অসমতা উপাদান সাবলিস্টের সর্বোচ্চ দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম

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

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

  4. পাইথনে একটি উপাদান সরিয়ে কনটিগুয়াস স্ট্রিক্টলি ইনক্রিজিং সাবলিস্টের সর্বোচ্চ দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম