728x90
반응형
문제출처:https://school.programmers.co.kr/learn/courses/30/lessons/17677
풀이:
from collections import Counter
def solution(str1, str2):
result1 = [str1[i:i + 2].upper() for i in range(len(str1) - 1) if str1[i : i+2].isalpha()]
result2 = [str2[i:i + 2].upper() for i in range(len(str2) - 1) if str2[i : i+2].isalpha()]
if len(result1) == 0 and len(result2) == 0 : return 65536
A = Counter(result1)
B = Counter(result2)
sum_AB = sum((A | B).values())
mid_AB = sum((A & B).values())
return int(mid_AB / sum_AB * 65536)
isalpha 문자면 True 리턴
Counter 딕셔너리 형태로 하나하나 카운트 세줌
| 합집합 & 교집합
반응형
댓글