본문 바로가기
Algorithm/BOJ

[BOJ]1516번: 게임 개발

by BAYABA 2021. 3. 5.

www.acmicpc.net/problem/1516


건물 짓는 선후 관계가 있기 때문에 위상정렬로 해결할 수 있습니다.

 

1. 선후 관계를 만족하는 임의의 위상 정렬 순서 구하기

2. 1번에서 구한 순서를 바탕으로 실제 BuildTime 구하기

 

아래와 같은 관계가 성립합니다.

 

현재 빌딩을 짓는데 실제 걸리는 시간

= 현재 빌딩을 짓는데 원래 걸리는 시간 + 먼저 지어야 하는 건물을 짓는데 실제 걸리는 시간 중 최댓값

 

realBuildTime[now] = max(realBuildTime[preBuilding]) + buildTime[now]


코드: github.com/cotchan/algorithm/blob/main/cpp/BOJ/BOJ1516.cc 

 

'Algorithm > BOJ' 카테고리의 다른 글

[BOJ]3197번: 백조의 호수  (0) 2021.03.08
[BOJ]3584번: 가장 가까운 공통 조상  (0) 2021.03.08
[BOJ]1766번: 문제집  (0) 2021.03.04
[BOJ]2056번: 작업  (0) 2021.03.04
[BOJ]17088번: 등차수열 변환  (0) 2021.02.23