아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

케이크

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

요약
케이크마다 세 사람의 섭취 시간이 다르고 각 케이크를 임의 비율로 나눌 수 있을 때, n개의 케이크를 모두 먹는 최소 시간을 구한다.
난이도

어려움10점 중 8점

유형
이분 탐색, 그리디, 수학, 정렬
정답자
아직 제출이 없습니다

문제

말포이는 생일 파티 선물로 케이크 nn개를 받았다. 그는 이 케이크를 친구 크래비와 고일과 나눠 먹기로 했다. 동시에 다른 슬리데린에게는 생일 선물을 나눠 주고 싶지 않다. 그래서 남들이 눈치채기 전에 이 케이크를 최대한 빨리 다 먹으려고 한다.

말포이가 ii번째 케이크를 먹는 데 aia_i초가 걸린다. 크래비가 ii번째 케이크를 먹는 데는 bib_i초가 걸리고, 고일이 ii번째 케이크를 먹는 데는 cic_i초가 걸린다. 케이크를 여러 조각으로 나눌 수 있고, 한 조각을 먹는 데 걸리는 시간은 조각의 크기에 비례한다. 세 사람은 당연히 케이크를 동시에 먹는다. 케이크 nn개를 다 먹는 데 필요한 최소 시간을 구할 수 있는가?

입력

첫째 줄에 케이크의 개수 nn이 주어진다. (1≤n≤5⋅1041 \le n \le 5 \cdot 10^4)

둘째 줄에 nn개의 정수 a1a_1, …\ldots, ana_n이 주어진다.

셋째 줄에 nn개의 정수 b1b_1, …\ldots, bnb_n이 주어진다.

넷째 줄에 nn개의 정수 c1c_1, …\ldots, cnc_n이 주어진다.

1≤ai,bi,ci≤1001 \le a_i, b_i, c_i \le 100임이 보장된다.

출력

말포이, 크래비, 고일이 케이크 nn개를 모두 먹는 데 걸리는 최소 시간을 한 개의 수로 출력한다. 절대 오차 또는 상대 오차가 10−610^{-6} 이하이면 정답으로 인정된다.

예제2

  1. 예제 1

    입력
    3
    1 2 3
    2 3 1
    3 1 2
    
    예상 출력
    1.000000000000000000
    
  2. 예제 2

    입력
    2
    1 1
    2 2
    3 3
    
    예상 출력
    1.090909090908996903