전체 글
-
[BOJ/python]2263번 트리의 순회알고리즘/BOJ 2022. 6. 29. 21:34
2263번 트리의 순회 파이썬 문제 출처 - https://www.acmicpc.net/problem/2263 2263번: 트리의 순회 첫째 줄에 n(1 ≤ n ≤ 100,000)이 주어진다. 다음 줄에는 인오더를 나타내는 n개의 자연수가 주어지고, 그 다음 줄에는 같은 식으로 포스트오더가 주어진다. www.acmicpc.net 문제를 처음봤을 때 접근 방법이 도저히 떠오르지 않아서 다른 문제를 풀다가 다시 시도했다. 트리의 노드를 여러 개 그려서 inorder과 postorder을 각각 써보면 규칙을 발견할 수 있다. 각각의 순회는 재귀적으로 표현할 수 있다. inorder - 왼쪽 서브 트리 / 루트 / 오른쪽 서브 트리 → 여기서 각각의 서브 트리도 다시 inorder이다. 즉 다음과 같이 표현할 ..
-
[BOJ/python] 2623번 음악프로그램알고리즘/BOJ 2022. 6. 29. 16:05
2623번 음악프로그램 파이썬 문제 출처 - https://www.acmicpc.net/problem/2623 2623번: 음악프로그램 첫째 줄에는 가수의 수 N과 보조 PD의 수 M이 주어진다. 가수는 번호 1, 2,…,N 으로 표시한다. 둘째 줄부터 각 보조 PD가 정한 순서들이 한 줄에 하나씩 나온다. 각 줄의 맨 앞에는 보조 PD가 담당한 www.acmicpc.net 위상 정렬 문제 중 대표적인 문제다. 아마 다들 위상 정렬을 공부하고 풀었을텐데 나는 그냥 구현 느낌으로 코드를 작성했다. 주어지는 노드의 개수가 작기 때문에 쉽게 풀 수 있었던 것 같다. 1. 풀이 각 프로그램이 실행되기 위한 조건을 queue에 저장한다. 1 2 5 의 경우 G[2]에 1을 append, G[5]에 2를 appen..