컴공생의 다이어리
[프로그래머스] 뉴스 클러스터링 - 파이썬(Python) 본문
[프로그래머스] 뉴스 클러스터링 - 파이썬(Python)
from collections import Counter
def solution(str1, str2):
# 소문자로 변경
str1, str2 = str1.lower(), str2.lower()
# 문자열 조각들 만들기
str1_set = list(str1[i:i + 2] for i in range(len(str1) - 1) if str1[i:i + 2].isalpha())
str2_set = list(str2[i:i + 2] for i in range(len(str2) - 1) if str2[i:i + 2].isalpha())
# 문자열 조각들 세기
str1_counter, str2_counter = Counter(str1_set), Counter(str2_set)
len_inter = sum((str1_counter & str2_counter).values()) # 교집합 개수
len_union = sum((str1_counter | str2_counter).values()) # 합집합 개수
return 65536 if len_union == 0 and len_inter == 0 else int(len_inter / len_union * 65536)
https://programmers.co.kr/learn/courses/30/lessons/17677
728x90
'Development > Algorithm & Coding Test' 카테고리의 다른 글
[프로그래머스] 순위 - 파이썬(Python) (0) | 2022.06.20 |
---|---|
[프로그래머스] 가장 먼 노드 - 파이썬(Python) (0) | 2022.06.19 |
[프로그래머스] 파일명 정렬 - 파이썬(Python) (0) | 2022.06.17 |
[프로그래머스] 방금그곡 - 파이썬(Python) (0) | 2022.06.16 |
[프로그래머스] 게임 맵 최단거리 - 파이썬(Python) (0) | 2022.06.15 |
Comments