만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

호밀밭의 파수꾼

시간 제한1초메모리 제한512 MB

요약
직사각형을 세로로 나눈 세 구역에서 이동 속도가 다를 때, 왼쪽 아래에서 오른쪽 위까지 가장 빠르게 이동하는 경로의 시간을 구한다.
난이도

어려움10점 중 8점

유형
기하, 이분 탐색, 수학, 구현
정답자
아직 제출이 없습니다

문제

숙련된 조깅러인 당신은 직사각형 곡물밭을 가로지르는 지름길을 택하기로 했다. 이 밭은 세로로 세 구역으로 나뉘어 있고, 각각 호밀, 밀, 보리가 가득하다. 당신은 밭의 왼쪽 아래 모서리에서 오른쪽 위 모서리로 이동하려고 한다.

어떤 곡물을 밟고 있는지에 따라 올바른 조깅 기술이 달라진다. 따라서 당신은 세 구역을 서로 다를 수 있는 세 가지 속력으로 지나가게 된다. 경로는 원하는 대로 계획할 수 있지만 밭을 벗어나서는 안 된다.

밭의 왼쪽 아래 모서리에서 오른쪽 위 모서리까지 가는 데 필요한 최소 시간을 구하시오.

입력

첫째 줄에 테스트 케이스의 수 zz가 주어진다 (1≤z≤10 0001 \leq z \leq 10\,000). 이어서 각 테스트 케이스의 설명이 주어진다.

각 테스트 케이스는 한 줄에 일곱 개의 정수 h,a,b,c,v_a,v_b,v_ch, a, b, c, v\_a, v\_b, v\_c로 주어진다 (1≤h,a,b,c,v_a,v_b,v_c≤1051 \leq h, a, b, c, v\_a, v\_b, v\_c \leq 10^5). hh는 직사각형 밭의 높이, a,b,ca, b, c는 세 구역의 너비, v_a,v_b,v_cv\_a, v\_b, v\_c는 각 구역에서 낼 수 있는 속력이다. 속력 vv는 단위 시간당 정확히 vv만큼의 거리를 이동한다는 뜻이다.

출력

각 테스트 케이스마다 왼쪽 아래 모서리에서 오른쪽 위 모서리까지 가는 데 필요한 총 시간을 출력한다.

정답과의 차이가 10−310^{-3} 이하이면 정답으로 인정된다.

예제1

  1. 예제 1

    입력
    2
    10 3 4 3 1 1 1
    21 5 12 4 4 3 4
    
    예상 출력
    14.14213562
    8.75