Search
Duplicate

뉴스 클러스터링

Level
2
문제 진행 상태
코드 완료
해설 작성 중
알고리즘 & 자료구조
집합
정답률 (%)
62
태그
2018 KAKAO BLIND RECRUITMENT

문제 링크

풀이 과정

전체 코드

def all_alpha(sub_str): return sub_str[0].isalpha() and sub_str[1].isalpha() def make_set(full_str): target_set = set() char_dict = dict() for i in range(len(full_str)-1): sub_str = full_str[i:i+2] if all_alpha(sub_str): if sub_str in char_dict: char_dict[sub_str] += 1 else: char_dict[sub_str] = 0 target_set.add(sub_str + '_' + str(char_dict.get(sub_str))) return target_set def solution(str1, str2): answer = 0 str1, str2 = str1.lower(), str2.lower() set1 = make_set(str1) set2 = make_set(str2) union_len = len(set1.union(set2)) inter_len = len(set1.intersection(set2)) if union_len == 0 and inter_len == 0: return 65536 elif union_len != 0 and inter_len == 0: return 0 elif union_len != 0 and inter_len != 0: return int(inter_len / union_len * 65536)
Python
복사