मान लीजिए कि हमारे पास दो तार s और t हैं, हमें s से सबसे अधिक बार आने वाले वर्ण का चयन करना है और फिर हमें यह जांचना है कि क्या वह विशेष वर्ण t समान संख्या में मौजूद है या नहीं।
इसलिए, यदि इनपुट s ="क्रॉससेक्शन", t ="सिक्योरसिस्टम" जैसा है, तो आउटपुट ट्रू होगा, क्योंकि s में सबसे अधिक बार आने वाला वर्ण 's' है। और t में 's' के समान संख्या में बारंबारताएँ होती हैं।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- freq:=एक नक्शा जिसमें s के सभी वर्ण और उनकी आवृत्तियाँ शामिल हैं
- max_freq_char =s में वर्ण जहां आवृत्ति अधिकतम है
- max_freq :=max_freq_char का फ़्रीक्वेंसी मान
- यदि t में max_freq_char की आवृत्ति max_freq के समान है, तो
- सही लौटें
- झूठी वापसी
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
from collections import defaultdict def solve(s, t) : freq = defaultdict(int) for char in s : freq[char] += 1 max_freq_char = max(freq, key=freq.get) max_freq = freq[max_freq_char] if max_freq == t.count(max_freq_char) : return True return False s = "crosssection" t = "securesystem" print(solve(s, t))
इनपुट
"crosssection", "securesystem"
आउटपुट
True