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

পাইথনে দিয়ে गये অক্ষरों থেকে বানানো সবচেয়ে বড় শব্দের দৈর্ঘ্য বের করার প্রোগ্রাম


मान लीजिए हमारे पास words नामक स्ट्रिंग्स की एक सूची है और letters नामक एक अन्य स्ट्रिंग है, हमें words में सबसे लंबे स्ट्रिंग की लंबाई ढूंढनी है जिसे letters के वर्णों से बनाया जा सकता है। यदि कोई शब्द नहीं बनाया जा सकता है, तो 0 वापस करें। यहां हम अक्षरों का पुन: उपयोग नहीं कर सकते।

उदाहरण के लिए, यदि इनपुट है words = ["dog", "cat", "rat", "bunny", "lion", "bat"], letters = "gabctnyu", तो आउटपुट होगा 3, क्योंकि हम "cat", या "bat" शब्द बना सकते हैं, इसलिए अधिकतम लंबाई 3 है।

इसे हल करने के लिए, हम निम्नलिखित चरणों का पालन करेंगे:

  • ref := अक्षरों और उनकी आवृत्तियों के साथ एक मैप
  • max := 0
  • words में प्रत्येक शब्द के लिए, करें
    • w := शब्द के अक्षरों और उनकी आवृत्तियों के साथ एक मैप
    • l := शब्द का आकार
    • counter := 0
    • w में प्रत्येक k के लिए, करें
      • यदि w[k] <= ref[k], तो
        • counter := counter + 1
      • अन्यथा,
        • लूप से बाहर निकलें
    • यदि l > max और w का आकार counter के समान है, तो
      • max := l
  • max वापस करें

बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें:

उदाहरण

from collections import Counter class Solution:    def solve(self, words, letters):       ref = Counter(letters)       max = 0       for word in words :          w = Counter(word)          l = len(word)          counter = 0          for k in w :             if w[k] <= ref[k]:                counter+=1                pass                else :                break                if l > max and len(w) == counter:                   max = l          return max ob = Solution() words = ["dog", "cat", "rat", "bunny", "lion", "bat"] letters = "gabctnyu" print(ob.solve(words, letters))

इनपुट

["dog", "cat", "rat", "bunny", "lion", "bat"], "gabctnyu"

आउटपुट

3

  1. পাইথনে বাইনারি ম্যাট্রিক্স-এ সর্বোচ্চ পথ দৈর্ঘ্য খুঁজে বের করার প্রোগ্রাম

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

  3. পাইথনে n-এর k-তম ফ্যাক্টর বের করার প্রোগ্রাম

  4. পাইথনে একই x বা y কোঅর্ডিনেট वाले নিকটতম পয়েন্ট খুঁজে বের করা