Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में दिए गए अक्षरों का उपयोग करके सबसे लंबी लंबाई ज्ञात करने का कार्यक्रम, जिसे बनाया जा सकता है

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

इसलिए, यदि इनपुट शब्द =["कुत्ता", "बिल्ली", "चूहा", "बनी", "शेर", "बैट"], अक्षर ="गैबक्टन्यू" जैसा है, तो आउटपुट 3 होगा, जैसा कि हम शब्द "बिल्ली", या "बैट" बना सकते हैं, इसलिए अधिकतम लंबाई 3 है।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

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

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

उदाहरण

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. पायथन में सबसे लंबी मैट्रिक्स पथ लंबाई की लंबाई खोजने का कार्यक्रम

    मान लीजिए हमारे पास एक बाइनरी मैट्रिक्स है, जहां 0 खाली सेल को इंगित करता है और 1 दीवार को इंगित करता है। हम पहली पंक्ति पर किसी भी खाली सेल से शुरू कर सकते हैं और अंतिम पंक्ति पर किसी भी खाली सेल पर समाप्त करना चाहते हैं। हम बाएँ, दाएँ या नीचे जा सकते हैं, हमें सबसे लंबा ऐसा रास्ता खोजना होगा जहाँ

  1. पायथन में एक एन-आरी पेड़ में सबसे लंबे पथ की लंबाई खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक किनारे की सूची है जहां प्रत्येक आइटम धारण कर रहा है (यू, वी) दर्शाता है कि आप वी के माता-पिता हैं। हमें पेड़ में सबसे लंबे पथ की लंबाई का पता लगाना है। पथ की लंबाई उस पथ में 1 + नोड्स की संख्या है। तो, अगर इनपुट पसंद है तो आउटपुट 5 होगा, क्योंकि पथ [1, 4, 5, 7] है, कुल

  1. निकटतम बिंदु खोजने के लिए कार्यक्रम जिसमें समान x या y है, पायथन का उपयोग करके समन्वय करता है

    मान लीजिए कि हमारे पास pts नामक सरणी में दिए गए बिंदुओं का एक सेट है। हमारे पास एक और बिंदु (x, y) भी है जो हमारा वर्तमान स्थान है। हम एक मान्य बिंदु को एक ऐसे बिंदु के रूप में परिभाषित कर रहे हैं, जो हमारे वर्तमान बिंदु के समान x-निर्देशांक या समान y-निर्देशांक साझा करता है। हमें अपने वर्तमान स्थान