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

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


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

उदाहरण के लिए, words = ["time", "emit", "mo", "m"] के लिए आउटपुट 3 होगा ("timeemit", "emittime", "mom")।

एल्गोरिदम (ब्रूट फोर्स)

  • res := 0, ln := len(words)
  • दो पास (k=0,1) के लिए:
    • i=0 से ln-1, j=i+1 से ln-1 तक:
      • यदि words[i]+words[j] पैलिंड्रॉम है, तो res++
    • words := words[::-1] (रिवर्स करें)
  • res वापस करें

उदाहरण

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. - पायथन में स्ट्रिंग के वर्णों का उपयोग करके अद्वितीय पैलिंड्रोम की संख्या गिनने का प्रोग्राम

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

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

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

  1. - पायथन में उन स्ट्रिंग्स की संख्या खोजें जहां 'a' 'a' या 'b' हो सकता है, और 'b' 'b' ही रहता है

    मान लीजिए हमारे पास केवल a और b वाली एक स्ट्रिंग s है। a a रह सकते हैं या b में बदल सकते हैं, लेकिन b को बदला नहीं जा सकता। हमें उन अद्वितीय स्ट्रिंग्स की संख्या ढूंढनी है जो हम बना सकते हैं। उदाहरण के लिए, यदि इनपुट है s = baab, तो आउटपुट होगा 4, क्योंकि हम ये स्ट्रिंग्स बना सकते हैं: [baab, babb,