मान लीजिए कि हमारे पास एक स्ट्रिंग s और दूसरी संख्या k है, हमें यह जांचना होगा कि हम s में सभी वर्णों का उपयोग करके kpalindromes बना सकते हैं या नहीं।
इसलिए, यदि इनपुट s ="amledavmel" k =2 जैसा है, तो आउटपुट ट्रू होगा, क्योंकि हम "लेवल" और "मैडम" बना सकते हैं।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे
-
d :=एक नक्शा जहां प्रत्येक अद्वितीय वर्ण और उनकी आवृत्ति संग्रहीत होती है
-
सीएनटी:=0
-
d में प्रत्येक कुंजी के लिए करें
-
यदि d[कुंजी] विषम है, तो
-
सीएनटी:=सीएनटी + 1
-
-
अगर cnt> k, तो
-
झूठी वापसी
-
-
-
सही लौटें
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें
उदाहरण
from collections import Counter class Solution: def solve(self, s, k): d = Counter(s) cnt = 0 for key in d: if d[key] & 1: cnt += 1 if cnt > k: return False return True ob = Solution() s = "amledavmel" k = 2 print(ob.solve(s, k))
इनपुट
"amledavmel",2
आउटपुट
True