मान लीजिए कि हमारे पास n लंबाई के दो तार s और t हैं। हम एक अक्षर s से और दूसरा t से ले सकते हैं और उन्हें स्वैप कर सकते हैं। हम असीमित संख्या में स्वैप कर सकते हैं; हमें यह जांचना होगा कि दो तारों को बराबर बनाना संभव है या नहीं।
इसलिए, यदि इनपुट s ="xy", t ="yx" जैसा है, तो आउटपुट सही होगा
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- st:=s और t को जोड़ने के बाद स्ट्रिंग को सॉर्ट करें
- मैं के लिए 0 से लेकर सेंट -1 के आकार तक के लिए, 2 की वृद्धि करें
- यदि st[i], st[i+1] के समान नहीं है, तो
- झूठी वापसी
- यदि st[i], st[i+1] के समान नहीं है, तो
- सही लौटें
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण
class Solution: def solve(self, s, t): st=sorted(s+t) for i in range(0,len(st),2): if st[i]!=st[i+1]: return False return True ob = Solution() print(ob.solve("xy", "yx"))
इनपुट
"xy", "yx"
आउटपुट
True