[골드 3] 백준 1005 - ACM Craft (파이썬)
[골드 3] 백준 1005 - ACM Craft (파이썬)
2025.05.10https://www.acmicpc.net/problem/1005풀이각 건물은 건설 완료에 특정 시간이 걸림.어떤 건물을 짓기 위해 다른 건물을 먼저 지어야 할 수도 있음.목표 건물 W를 짓기까지의 최소 시간을 구해야 함.진입 차수 계산 및 그래프 구성count[y] += 1은 y번 건물을 짓기 전 지어야 할 건물 개수를 누적함.adj[x].append(y)는 x 건물 후에 y 건물을 지을 수 있다는 의미.초기 시작 노드 설정 (진입 차수가 0인 노드)진입 차수가 0인 건물은 바로 지을 수 있으므로 queue에 삽입.finish[i] = D[i]로 초기화.위상 정렬 + DPu를 짓고 나면 그 다음 건물 v는 finish[v] = max(finish[v], finish[u] + D[v])로 업데이트함.즉,..