파이썬 알고리즘 인터뷰 문제 29번(리트코드 771번) Jewels and Stones
https://leetcode.com/problems/jewels-and-stones/
class Solution:
def numJewelsInStones(self, jewels: str, stones: str) -> int:
counter = collections.Counter(stones)
count = 0
for jewel in jewels:
count += counter[jewel]
return count
Counter대신 dict이나 defaultdict 을 이용해서 직접 세어도 된다.class Solution:
def numJewelsInStones(self, jewels: str, stones: str) -> int:
return sum([stone in jewels for stone in stones])
class Solution:
def numJewelsInStones(self, jewels: str, stones: str) -> int:
return len(re.sub(f'[^{jewels}]', '', stones))