문제29: 보석과 돌

Created
Feb 12, 2023 06:03 AM
Tags
 

문제


J는 보석이며, S는 갖고 있는 돌이다. S에는 보석이 몇개나 있을까? 대소문자는 구분한다.
 

입력


J = "aA", S = "aAAbbbb"
 

출력


3
 

풀이


  1. 한줄 풀이
return s in J for s in S
 
  1. 카운터 사용
freqs = collections.counter(S) # 카운터는 존재하지 않는 키의 경우 0을 출력해줌 count = 0 for char in J: count += freqs[char] return count
 
  1. defaultdict를 이용한 비교 생략
freqs = collections.defaultdict(int) count = 0 for char in S: freqs[char] += 1 for char in J: count += feaqs[char] return count

새로운 개념