스카이라인
시간 제한2초메모리 제한256 MB
1개, 이웃한 2개, 연속한 3개 동에 층을 올리는 작업 비용이 3, 5, 7일 때 목표 높이 N개 동을 가장 싸게 짓습니다.
- 난이도
보통10점 중 6점
- 유형
- 동적 계획법
- 정답자
- 아직 제출이 없습니다
문제
도시에 멋진 스카이라인을 만들려고 한다. 일직선 위에 고층 건물 개를 세우기로 했고, 번 건물은 층수가 정확히 가 되어야 한다.
건설 회사 세 곳에서 서로 다른 조건을 제시했다. 첫째 회사는 원하는 건물 하나에 한 층을 올려 주고 300만 유로를 받는다. 둘째 회사는 이웃한 두 건물을 골라 각각 한 층씩, 모두 두 층을 올려 주고 500만 유로를 받는다. 이때 두 층의 높이가 같을 필요는 없다. 셋째 회사는 연속한 세 건물을 골라 각각 한 층씩, 모두 세 층을 올려 주고 700만 유로를 받는다.
공사 순서는 마음대로 정할 수 있다. 모든 건물을 목표 층수로 완성하는 데 드는 최소 비용을 구하시오.
입력
첫째 줄에 건물의 개수 이 주어진다. ()
둘째 줄에 이 공백으로 구분되어 주어진다. ()
출력
최소 비용을 백만 유로 단위의 정수 하나로 출력한다.