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

पायथन में पैलिंड्रोम बनाने के लिए शब्दों को संयोजित करने के कई तरीके खोजने का कार्यक्रम

मान लीजिए कि हमारे पास अलग-अलग शब्दों की एक सूची है, हमें पैलिंड्रोम बनाने के लिए दी गई शब्दों की सूची से दो अलग-अलग शब्दों को जोड़ने के विभिन्न तरीकों की संख्या का पता लगाना होगा।

इसलिए, यदि इनपुट शब्द =["समय", "एमिट", "मो", "एम"] जैसा है, तो आउटपुट 3 होगा, क्योंकि हम "टाइमेमिट", "एमिटटाइम" और "मॉम" बना सकते हैं। ।

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

  • रेस :=0

  • ln:=सरणी में शब्दों की संख्या

  • k के लिए 0 से 1 की सीमा में, करें

    • 0 से ln − 1 की सीमा में i के लिए, करें

      • j के लिए i + 1 से ln − 1 की श्रेणी में, करें

        • res :=res + (1 जब शब्द [i] शब्दों को जोड़ते हैं [j] पैलिंड्रोम है, अन्यथा 0)

    • शब्द :=उल्टे क्रम में शब्द

  • रिटर्न रेस

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

उदाहरण

class Solution:
   def solve(self, words):
      def is_palindrome(w1, w2):
         w3 = w1 + w2
         return w3 == w3[::−1]
      res = 0
      ln = len(words)
      for k in range(2):
         for i in range(ln):
            for j in range(i + 1, ln):
               res += is_palindrome(words[i], words[j])
            words = words[::−1]
      return res
ob = Solution()
words = ["time", "emit", "mo", "m"]
print(ob.solve(words))

इनपुट

["time", "emit", "mo", "m"]

आउटपुट

3

  1. पायथन में स्ट्रिंग वर्णों का उपयोग करके हम अद्वितीय पैलिंड्रोम की संख्या गिनने का कार्यक्रम बना सकते हैं

    मान लीजिए कि हमारे पास एक स्ट्रिंग है, हमें सभी वर्णों का उपयोग करके उत्पन्न होने वाले अलग-अलग पैलिंड्रोम की संख्या का पता लगाना होगा। अगर उत्तर बहुत बड़ा है तो परिणाम को 10^9 + 7 से संशोधित करें। इसलिए, यदि इनपुट s =xyzzy जैसा है, तो आउटपुट 2 होगा, क्योंकि हम zyxyz और yzxzy बना सकते हैं इसे हल कर

  1. पायथन में एक संदेश को डिकोड करने के कई तरीकों को खोजने के लिए कार्यक्रम

    मान लीजिए कि हमारे पास ए =1, बी =2, ... जेड =26 जैसी मैपिंग है, और हमारे पास एक एन्कोडेड संदेश संदेश स्ट्रिंग है, हमें इसे डिकोड करने के तरीकों की संख्या गिननी होगी। इसलिए, यदि इनपुट संदेश =222 जैसा है, तो आउटपुट 3 होगा, क्योंकि इसे 3 तरीकों से डिकोड किया जा सकता है:बीबीबी, बीवी, और वीबी। इसे हल क

  1. स्ट्रिंग की संख्या खोजने के लिए प्रोग्राम जहां हम 'ए' 'ए' या 'बी' हो सकते हैं, और 'बी' पाइथन में 'बी' रहता है

    मान लीजिए कि हमारे पास केवल ए और बी के साथ एक स्ट्रिंग है। ए एस ए रह सकता है या बी में बदल सकता है, लेकिन बी को बदला नहीं जा सकता है। हमें अद्वितीय स्ट्रिंग्स की संख्या ज्ञात करनी होगी जो हम बना सकते हैं। इसलिए, यदि इनपुट s =baab जैसा है, तो आउटपुट 4 होगा, क्योंकि हम इन स्ट्रिंग्स को बना सकते हैं -