728x90 파이썬2 2020 KAKAO BLIND RECRUITMENT 문자열 압축 백준 알고리즘 2135번 문자열 압축하기 문제와 비슷해 보이는데 좀더 쉬운 문제 같아 보였다. python으로 풀어보았다 def zip_string(s, size): zipstring = "" count = 1 chk_word = s[0:size] for i in range(size,len(s),size): cur_word = s[i:i+size] if(chk_word == cur_word): count = count + 1 else: if count > 1: zipstring = zipstring + str(count) + chk_word else: zipstring = zipstring + chk_word chk_word = cur_word count = 1 if count > 1 : zipstrin.. 2019. 11. 25. 2020 KAKAO BLIND RECRUITMENT 가사 검색 (Trie) 문자열 검색 알고리즘중 Trie가 가장 효율적이라고 들어서 python으로 Trie 구현해서 풀었다. 접미사의 경우엔 reverse해서 탐색하도록 함 Trie 구현 class Node(object): def __init__(self, key, data=None): self.key = key self.data = data self.children = {} class Trie(object): def __init__(self): self.head = Node(None) def insert(self, string): curr_node = self.head for char in string: if char not in curr_node.children: curr_node.children[char] = Node(c.. 2019. 10. 5. 이전 1 다음 728x90