날다람쥐
시간 제한3초메모리 제한1024 MB
날다람쥐가 높이 L에서 출발해 모든 기둥을 차례로 지나 높이 R에 도달할 때, 땅에 닿지 않고 드는 최소 비용을 구합니다.
문제
2차원 평면 위에 개의 기둥이 일렬로 놓여 있다. 기둥에는 왼쪽에서 오른쪽으로 1번부터 번까지 자연수 번호가 붙어 있다.
()번째 기둥의 바닥은 점 에 있고, 높이는 이다. 따라서 이 기둥은 점 과 를 잇는 선분이다. 또한 이다.
처음에 날다람쥐는 가장 왼쪽 기둥의 높이 인 곳, 즉 점 에 있다. 날다람쥐는 모든 기둥을 왼쪽부터 순서대로 거쳐서 가장 오른쪽 기둥의 높이 인 곳, 즉 점 에 도착하려고 한다.
날다람쥐가 한 기둥에서 다음 기둥으로 날아갈 때 오른쪽으로 ()만큼 움직이면 높이는 만큼 줄어든다. 다음 기둥에 도착하기 전에 땅에 닿으면 안 된다. 다음 기둥의 높이 0인 곳에 도착하는 것은 허용된다.
날다람쥐는 한 기둥에서 위로 기어오르거나 아래로 내려갈 수 있다. 기둥의 높이보다 더 높은 곳으로 오를 수는 없다. 번째 기둥에서 위로 ()만큼 오르면 의 비용이 든다. 아래로 내려갈 때는 비용이 들지 않는다.
그림 1은 날다람쥐가 이동하는 한 가지 예이다.

그림 1
그림 2의 왼쪽처럼 이동하면 중간에 땅에 닿으므로 허용되지 않는다. 그림 2의 오른쪽처럼 이동하면 기둥을 거치지 않는 경우가 있으므로 역시 허용되지 않는다.

그림 2
가장 작은 총 비용으로 날다람쥐가 목표 위치에 도착할 수 있는 방법을 계산하라.