Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬의 보석과 돌

<시간/>

보석으로 간주되는 일부 문자를 나타내는 문자열 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