สมมติว่าเรามีสตริง J ที่บ่งบอกตัวอักษรบางตัวที่ถือว่าเป็นอัญมณี และอีกสตริง S หนึ่ง ที่แทนหินที่เรามี ภารกิจของเราคือหาว่ามีหินใน S กี่อันที่เป็นอัญมณีด้วย ตัวอักษรใน J และ S ควบคุมตัวพิมพ์เล็ก-ใหญ่ (case sensitive) เช่น ถ้า 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