কম্পিউটার

পাইথনে অনন্য অক্ষরের সংযুক্ত স্ট্রিংয়ের দৈর্ঘ্য খুঁজে পেতে প্রোগ্রাম?


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

সুতরাং, যদি ইনপুটটি শব্দের মত হয় =["xyz", "xyw", "wab", "cde"], তাহলে আউটপুট হবে 9, যেহেতু আমরা কোনো শব্দ বাছাই করতে পারি না কারণ এতে ডুপ্লিকেট অক্ষর রয়েছে।

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

উত্তর :=0

একটি ফাংশন recur() সংজ্ঞায়িত করুন। এটি i:=0, cur:=ফাঁকা স্ট্রিং

লাগবে
if i is same as size of words , then
   ans := maximum of ans and size of cur
   return
recur(i + 1, cur)
if all characters in words[i] are unique and all characters in (cur + words[i]) are unique, then
   recur(i + 1, cur + words[i])
From the main method do the following:
recur()
return ans

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

উদাহরণ

class Solution:
   def solve(self, words):
      ans = 0

      def is_all_unique(s):
         return len(set(s)) == len(s)

      def recur(i=0, cur=""):
         nonlocal ans
         if i == len(words):
            ans = max(ans, len(cur))
         return

         recur(i + 1, cur)
         if is_all_unique(words[i]) and is_all_unique(cur + words[i]):
            recur(i + 1, cur + words[i])

      recur()
      return ans

ob = Solution()
words = ["xyz", "xyw", "wab", "cde"]
print(ob.solve(words))

ইনপুট

["xyz", "xyw", "wab", "cde"]

আউটপুট

9

  1. পাইথন প্রোগ্রাম একটি স্ট্রিং সব অনন্য অক্ষর আছে কিনা তা পরীক্ষা করতে

  2. পাইথন প্রোগ্রাম একটি স্ট্রিং-এ সমস্ত সদৃশ অক্ষর খুঁজে পেতে

  3. একটি স্ট্রিং মধ্যে মিরর অক্ষর খুঁজে পেতে পাইথন প্রোগ্রাম

  4. পাইথনে অস্বাভাবিক অক্ষরের সাথে সংযুক্ত স্ট্রিং?