언덕
시간 제한1초메모리 제한512 MB
두 끝점이 고정되어 있고 길이가 정해진 선분 n개로 이루어진 꺾은선이 도달할 수 있는 최대 y좌표를 구합니다. 조건을 만족하는 꺾은선이 없으면 IMPOSSIBLE을 출력합니다.
문제
제니크와 마리치카는 눈덩이를 충분히 모아 두었고, 바로 게임을 시작하려 했다. 그런데 제니크는 평평한 곳에서 눈덩이를 던지는 것이 지루하다고 생각했다. 그는 언덕에 올라가 마리치카에게 눈덩이를 던질 수 있도록, 가능한 한 높은 언덕을 만들고 싶어 했다.
언덕을 만드는 일은 쉽지 않다. 제니크는 y축이 위를 향하도록 좌표축이 그려진 종이를 꺼내, 언덕의 단면(정면도)을 그렸다. 마리치카는 언덕이 지나치게 높아지는 것을 원하지 않아서, 단면에 다음 조건을 걸었다.
- 단면은 꺾은선이다.
- 꺾은선은 점 에서 시작해 점 에서 끝난다.
- 꺾은선은 개의 선분으로 이루어진다.
- 번째 선분의 길이는 이다.
제니크는 이 조건들 아래에서 만들 수 있는 언덕의 최대 높이를 알고 싶어 한다. 단면의 y좌표 최댓값을 구하라.
입력
첫 번째 줄에는 꺾은선의 시작점과 끝점 좌표인 정수 네 개 , , , ()이 주어진다.
두 번째 줄에는 선분의 개수 ()이 주어진다.
세 번째 줄에는 개의 정수 ()이 주어진다. 각 값은 선분의 길이이다.
출력
이 조건을 만족하는 언덕이 없으면 "IMPOSSIBLE"을 출력한다. 그렇지 않으면 가장 높은 점의 y좌표 최댓값을 실수 하나로 출력한다. 절대 오차 또는 상대 오차가 이하이면 정답으로 인정한다.