점프 경로
시간 제한2초메모리 제한1024 MB
직선 위에 금지 구역 n곳이 있고, 길이 R의 장대로 각 구역을 뛰어넘을 때 A에서 B까지 가는 최소 시간을 구합니다.
문제
뽀빠이(Popeye the Sailor)는 시금치를 즐겨 먹는다. 옥수수로 만든 파이프로 담배 피우기도 좋아해서, 늘 담배를 피운다.
뽀빠이는 Sweethaven 마을에 산다. 마을의 큰길은 직선으로 볼 수 있고, 이 길 위에 개의 공공장소가 있다. 각 장소는 직선 위 좌표 에 놓인 점이다.
뽀빠이는 큰길 위의 A 지점에서 B 지점까지 가야 한다. Sweethaven 당국은 법을 만들었다. 공공장소에서 보다 가까운 곳에서 담배를 피우는 것은 금지된다. 뽀빠이에게는 길이가 인 장대가 있으며 이다. 그는 이 장대로 금지 구역을 뛰어넘을 수 있다.
뽀빠이는 A 지점에서 출발한다. 에서 까지 걸으면 의 시간이 걸린다. 언제든지 장대를 사용해 반지름 인 반원을 따라 에서 또는 로 이동할 수 있다. 이때 의 시간이 걸린다. 경로의 끝에서 뽀빠이는 B 지점에 있어야 하며, 이동 경로의 어떤 점도 공공장소와 보다 가까워서는 안 된다.
입력
첫째 줄에 정수 , , , , 가 주어진다 (, , ). 둘째 줄에 정수 이 주어진다 (). 모든 는 서로 다르다. 점 A와 점 B는 서로 다르며, 둘 중 어느 점도 금지 구역에 속하지 않는다.
출력
최단 시간을 실수 하나로 출력한다. 절대 오차 또는 상대 오차가 이하이면 정답으로 인정한다. A에서 B로 갈 수 없으면 을 출력한다.
힌트
문제 예시에서 최적 경로 중 하나는 아래 그림과 같다. 걸린 시간은 이다.
