본문 바로가기

알고리즘

(2)
백준 10819 차이를 최대로 파이썬 (시간복잡도) https://www.acmicpc.net/problem/10819 문제 풀이 [사용한 개념] [시간복잡도] 1초 = 10^9 [permutation] permutation(iterable, r) - iterable : 순회할 수 있는 객체 - r: 몇 개를 뽑을 것인지 [종합 설명] 처음엔, 완전탐색이 아닌 다른 방법이 있을 수 있다고 생각했다. 그래서 다른 알고리즘적 방법을 생각해봤는데, 좋은 방법이 나오질 않았다. 그래서 다음에 풀어보아야겠다고 하며 넘어갔던 문제이다. 다시 봤을 땐, 완전탐색으로 풀릴 수 있는지 확인을 해보았다. 시간 복잡도 계산을 직접 해보았는데, n=8 이기 때문에 완전탐색을 해도 무방하였다!! [계산] 1. permutation 만들기 : 8! 2. permutation 순회..
백준 5639 이진검색트리 파이썬 https://www.acmicpc.net/problem/5639 문제 풀이 [사용한 개념] [재귀 코드 방식] 1. 재귀 함수의 실제 동작 2. 다음으로 넘어가기 3. 재귀 함수의 실제 동작 여기서, 재귀 함수의 실제 동작은 1번에 있을 수도 있고 3번에 있을 수도 있고, 둘 다 있을 수 있다. 1번에 있다면, 이전 상태에서 현재 상태로 왔을때 동작하는 부분이라고 생각하면 된다. 3번에 있다면, 현재 상태에서 다음 상태로 넘어갔다가, 돌아왔을 때 동작하는 부분이라고 생각하면 된다. [트리] 이진 검색 트리는, 왼쪽 child < 부모 노드 < 오른쪽 child 로 이루어진 트리를 의미한다. [종합 설명] 이진 검색 트리를, 전위순회 한 결과가 주어진다. 이진 검색 트리의 특성을 이용하면, 우리는 전위순..