สมมติว่าเรามีสตริง s และตัวเลข k อื่น เราต้องตรวจสอบว่าเราสามารถสร้าง kpalindromes โดยใช้อักขระทั้งหมดใน s ได้หรือไม่
ดังนั้น หากอินพุตเป็น s ="amledavmel" k =2 เอาต์พุตจะเป็น True ตามที่เราสร้าง "ระดับ" และ "มาดาม" ได้
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้
-
d :=แผนที่ที่เก็บอักขระที่ไม่ซ้ำกันและความถี่ของอักขระแต่ละตัว
-
cnt :=0
-
สำหรับแต่ละคีย์ใน d ทำ
-
ถ้า d[key] เป็นเลขคี่
-
cnt :=cnt + 1
-
-
ถ้า cnt> k แล้ว
-
คืนค่าเท็จ
-
-
-
คืนค่า True
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น
ตัวอย่าง
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