본문 바로가기

개발/Algorithm 문제 풀이42

[Python] 백준 - 5670 Trie 풀이 class Node(object): def __init__(self, key): self.key = key self.children = {} self.isLeaf = False class Trie(object): def __init__(self): self.root = Node(None) def insert(self, word): curr_node = self.root for chr in word: if chr not in curr_node.children: curr_node.children[chr] = Node(chr) curr_node = curr_node.children[chr] curr_node.isLeaf = True def search_count(self, word): curr_node .. 2020. 9. 11.
[Python] Trie - 2018 카카오 : 자동완성 https://programmers.co.kr/learn/courses/30/lessons/17685 코딩테스트 연습 - [3차] 자동완성 자동완성 포털 다음에서 검색어 자동완성 기능을 넣고 싶은 라이언은 한 번 입력된 문자열을 학습해서 다음 입력 때 활용하고 싶어 졌다. 예를 들어, go 가 한 번 입력되었다면, 다음 사용자는 g � programmers.co.kr 풀이 2020 카카오 가사 검색을 응용해서 풀었다. remains 대신 branch를 만들어서 그 노드를 포함하는?사용하는? 단어 수를 저장했다. 1번 테스트케이스(go, gone, guild)의 경우 아래 그림처럼 트리가 만들어진다. Trie에 단어를 삽입한다. 삽입할때 branch의 숫자를 1씩 올려준다. 그리고 다시 단어들을 탐색하는데.. 2020. 9. 9.
[C++, Python] Trie - 2020 카카오 : 가사 검색 https://programmers.co.kr/learn/courses/30/lessons/60060 코딩테스트 연습 - 가사 검색 programmers.co.kr 1. Python 풀이 1. 우선 단순하게 글자 queries 와 words 글자 비교를 해서 풀었다 글자수가 다르면 continue, ?여도 continue def solution(words, queries): answer = [] for query in queries: cnt = 0 for word in words: if len(query) != len(word): continue else : flag = True for i in range(len(query)): if query[i] == '?': continue elif query[i].. 2020. 9. 9.
[Python] 2133 타일 채우기 https://www.acmicpc.net/problem/2133 2133번: 타일 채우기 3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자. www.acmicpc.net 풀이 https://lyzqm.blogspot.com/2017/04/2133.html 2133 타일 채우기 백준 2133 타일채우기 https://www.acmicpc.net/problem/2133 1793 타일링 https://www.acmicpc.net/problem/1793 11726 2xn 타일링 https://www.ac... lyzqm.blogspot.com 위에 블로그를 참고했다. 마지막이 될 수 있는 유형은 이 세가지 이다 1,2번은 2가지 유형으로 만들어질 수 있으므로 점화식은 아래처럼 된다.. 2020. 9. 2.
728x90
반응형