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

पायथन में वर्णों की अदला-बदली करके दो तारों की जाँच करने का कार्यक्रम समान हो सकता है

मान लीजिए कि हमारे पास दो लोअरकेस स्ट्रिंग्स s और t हैं, वे समान लंबाई के हैं। हम एक अक्षर को s से और दूसरे को t से चुन सकते हैं और उन्हें स्वैप कर सकते हैं। हम इस ऑपरेशन को जितनी बार चाहें उतनी बार कर सकते हैं। अंत में, हमें यह जांचना होगा कि क्या दो तारों को समान बनाना संभव है या नहीं।

इसलिए, यदि इनपुट s ="abcd" t ="cdab" जैसा है, तो आउटपुट सही होगा

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

  • fre :=एक सूची जिसमें s और t के संयोजित स्ट्रिंग में मौजूद प्रत्येक तत्व की आवृत्तियाँ होती हैं
  • फ्री के सभी मूल्यों की सूची में प्रत्येक cnt के लिए, करें
    • यदि cnt mod 2 1 है, तो
      • झूठी वापसी
  • सही लौटें

उदाहरण

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

from collections import Counter
def solve(s, t):
   fre = Counter(s+t)

   for cnt in fre.values():
      if cnt % 2:
         return False

   return True

s = "abcd"
t = "cdab"
print(solve(s, t))

इनपुट

"abcd", "cdab"

आउटपुट

True

  1. पायथन में नोड्स की अदला-बदली से दो पेड़ बन सकते हैं या नहीं, इसकी जाँच करने के लिए कार्यक्रम

    मान लीजिए कि हमारे पास दो पेड़ हैं, हमें यह जांचना होगा कि क्या हम किसी भी नोड के बाएँ और दाएँ सबट्री को कितनी भी बार स्वैप करके पहले पेड़ को दूसरे में बदल सकते हैं। तो, अगर इनपुट पसंद है तो आउटपुट सही होगा इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - que1 :=शुरुआत में root0 वाली एक कतार

  1. दो तारों की जाँच करने का कार्यक्रम 0 या 1 संपादित दूरी दूर है या नहीं पायथन में

    मान लीजिए कि हमारे पास दो तार S और T हैं, हमें यह जांचना है कि वे एक या शून्य संपादन दूरी दूर हैं या नहीं। एक संपादन ऑपरेशन को एक चरित्र को हटाने, एक चरित्र जोड़ने या किसी अन्य चरित्र के साथ एक चरित्र को बदलने के रूप में परिभाषित किया जा सकता है। इसलिए, यदि इनपुट एस =हैलो, टी =हैलो जैसा है, तो आउटप

  1. पायथन में वर्णों की अदला-बदली करके समान लंबाई के दो तारों को बराबर करने का कार्यक्रम

    मान लीजिए कि हमारे पास n लंबाई के दो तार s और t हैं। हम एक अक्षर s से और दूसरा t से ले सकते हैं और उन्हें स्वैप कर सकते हैं। हम असीमित संख्या में स्वैप कर सकते हैं; हमें यह जांचना होगा कि दो तारों को बराबर बनाना संभव है या नहीं। इसलिए, यदि इनपुट s =xy, t =yx जैसा है, तो आउटपुट सही होगा इसे हल करने