결승선을 향한 시차 출발
시간 제한1초메모리 제한1024 MB
타원형 트랙의 기하 정보와 경주 거리가 주어질 때, 모든 선수가 같은 거리를 뛰도록 각 레인의 출발선 좌표를 계산한다.
문제
타원형 육상 트랙은 두 개의 평행한 직선 구간을 두 개의 반원으로 연결한 형태이다(그림 1). 달리기는 반시계 방향으로 진행되며, 아래쪽 직선 구간에 공통 결승선이 있다. 한 직선 구간의 길이를 넘는 경주의 경우, 출발선은 결승선에서 시계 방향으로 뒤로 물러나 시차를 두고 배치되어야 한다. 이때 반원의 곡률과 각 레인의 폭을 반영해야 한다.

그림 1: m 출발선이 표시된 타원형 트랙.

그림 2: 시차 출발선 위치를 보여 주는 확대도.
타원형 트랙의 규격에는 국제 기준이 있다. 그러나 트랙을 놓을 수 있는 공간이 항상 기준 규격에 맞는 것은 아니다. 트랙의 치수와 경주 거리가 주어질 때, 시차 출발선의 위치를 계산해 모든 레인의 경주 거리를 같게 만드는 프로그램을 작성하라.
각 레인의 경주 총거리는 주행선을 기준으로 계산한다. 주행선은 레인의 안쪽 표시선에서 (반시계 방향에서 볼 때) 오른쪽에 있는, 표시되지 않은 선이다. 그림 2를 참고하라. 가장 안쪽 레인(1번 레인)의 주행선은 보통 나머지 레인의 주행선보다 레인 표시선에서 더 멀리 떨어져 있다.
트랙은 중심이 인 좌표계에 대응된다. 그림 1을 참고하라.
입력
프로그램의 첫 번째 입력 줄에는 트랙의 기하 구조를 나타내는 일곱 개의 값 가 공백으로 구분되어 주어진다.
- 은 레인의 개수이다. ()
- 은 1번 레인의 안쪽 반지름이며 단위는 미터인 실수이다. 그림 1을 참고하라. ()
- 는 직선 구간의 길이이며 단위는 미터인 실수이다. 그림 1을 참고하라. ()
- 는 각 레인의 폭이며 단위는 미터인 실수이다. 그림 2를 참고하라. ()
- 는 그림 1의 중심선에서 잰 결승선의 좌표이며 단위는 미터인 실수이다. 결승선은 항상 트랙의 아래쪽(가 음수인) 절반에 있다. ()
- 은 1번 레인의 안쪽 반지름에서 1번 레인의 주행선까지의 오프셋이며 단위는 미터인 실수이다. 그림 2를 참고하라. ()
- 는 안쪽 반지름에서 2번 이상 레인의 주행선까지의 오프셋이다. 그림 2를 참고하라. ()
파일 끝까지 남은 줄에는 경주 거리 가 한 줄에 하나씩, 단위는 미터인 실수로 주어진다. () 입력에 주어지는 거리 는 최대 100개이다.
출력
각 경주 거리마다 일련의 값을 공백이나 줄바꿈으로 구분해 출력한다. 경주 거리를 먼저 출력하고, 이어서 시차 출발선 위치의 좌표를 레인 번호 순서대로 출력한다. 모든 값의 단위는 미터이다. 좌표는 레인의 가장 안쪽 점이며 주행선이 아니다. 각 레인 표시선(직선 구간 또는 반지름)은 폭이 0인 선으로 간주한다. 국제 기준에 따라 값은 정확한 답과의 차이가 미터 이내여야 한다.