Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

อัญมณีและหินใน Python

สมมติว่าเรามีสตริง 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