본문 바로가기

알고리즘 별 문제 정리/위상정렬

(10)
[C++] 백준 1516: 게임 개발 문제 이해각 건물에는 건설 시간이 존재한다.건설은 동시에 진행이 가능하고, 건물 순서상 필요한 건물이 모두 건설되었을 때 다음 건물을 건설할 수 있다.N개의 각 건물이 완성되기까지 걸리는 최소 시간을 출력하라.N: 건물의 개수 1 ~ 500(10^2)Di: 각 건물 건설에 걸리는 시간 1 ~ 100,000(10^5)   풀이N개의 각 건물을 짓는데 걸리는 최소시간을 구하는 문제이다. 각 건물마다 짓는데 걸리는 최소시간을 DP로 저장해놓고,순서가 주어진 그래프를 위상정렬을 하면 되는 문제이다.즉, DP와 위상정렬에 대해 둘 다 알고있어야 풀 수 있는 문제였다! 1005: ACM Craft 문제와 거의 같은 문제이다.https://dmoritle.tistory.com/entry/C-1005-ACM-Craft..
[C++] 백준 1005: ACM Craft 문제 이해건물은 짓는 순서는 매 게임마다 주어진다.각 건물에는 건설 시간이 존재한다.건설은 동시에 진행이 가능하고, 건물 순서상 필요한 건물이 모두 건설되었을 때 다음 건물을 건설할 수 있다.특정 건물을 가장 빨리 건설할 때까지 걸리는 최소 시간을 구하여라.T: 테스트 케이스N: 건물의 개수 1 ~ 10^3K: 건물순서 규칙의 총 개수 1 ~ 10^5Di: 각 건물 건설에 걸리는 시간 1 ~ 10^5{X, Y}: 건설 순서W: 백준이가 승리하기 위해 건설해야 하는 건물의 번호  풀이특정 건물을 짓는데 걸리는 최소시간을 구하는 문제이다. 각 건물마다 짓는데 걸리는 최소시간을 DP로 저장해놓고,순서가 주어진 그래프를 위상정렬을 하면 되는 문제이다.즉, DP와 위상정렬에 대해 둘 다 알고있어야 풀 수 있는 문..