मान लीजिए हमारे पास दो स्ट्रिंग्स s और t हैं। हमें जांचना है कि t, s के वर्णों का उपयोग करके बनाया जा सकता है या नहीं।
तो, यदि इनपुट s = "owleh" t = "hello" जैसा है, तो आउटपुट True होगा।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे:
- freq := एक मैप जिसमें सभी वर्ण और उनकी आवृत्तियाँ हैं
- i के लिए रेंज 0 से t के आकार - 1 तक, करें
- यदि freq[t[i]] 0 है, तो
- False लौटाएं
- freq[t[i]] := freq[t[i]] - 1
- यदि freq[t[i]] 0 है, तो
- True लौटाएं
बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें:
उदाहरण कोड
from collections import defaultdict def solve(s, t): freq = defaultdict(int) for i in range(len(s)): freq[s[i]] += 1 for i in range(len(t)): if freq[t[i]] == 0: return False freq[t[i]] -= 1 return True s = "owhtlleh" t = "hello" print(solve(s, t))
इनपुट
"apuuppa"
आउटपुट
True