สมมติว่าเรามีสตริง J ที่ระบุตัวอักษรบางตัวที่ถือว่าเป็นอัญมณี และสตริง S อีกอันที่แสดงถึงหินบางตัวที่เรามี งานของเราคือค้นหาจำนวนหินใน S ที่เป็นอัญมณีด้วย ตัวอักษรใน J และ S คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ดังนั้นหาก J =“aZc” และ S =“catTableZebraPicnic” แสดงว่ามีอัญมณี 7 เม็ด
เพื่อแก้ปัญหานี้ เราจะแปลงสตริงเป็นรายการอักขระ หากอักขระใน J มีอยู่ใน S ให้เพิ่มจำนวน
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
class Solution(object): def numJewelsInStones(self, J, S): jewels = {} for i in J: jewels[i] = 1 number = 0 for i in S: if i in jewels: number+=1 return number ob1 = Solution() print(ob1.numJewelsInStones("aZc", "catTableZebraPicnic"))
อินพุต
"aZc" "catTableZebraPicnic"
ผลลัพธ์
7