만드는 중입니다

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

중립 관객

시간 제한2초메모리 제한2048 MB

요약
각 질문마다 연속된 선한 마법사 x명과 연속된 악한 마법사 y명을 골라, 모든 쌍의 강도 (a_i + c_j) / (b_i + d_j) 최솟값이 가장 크게 되는 값을 구합니다.
난이도

어려움10점 중 8점

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

문제

마법사들의 싸움이 계속된다. 오늘 스베토자르는 선한 마법사 nn명으로 팀을 꾸렸고, 아르글브디티위릴흐디는 악한 마법사 mm명으로 팀을 꾸렸다.

각 마법사에게는 주문을 걸어 공격하는 능력과 다른 마법사의 주문을 막아내는 방어 능력이 있으며, 둘 다 수로 나타낸다. ii번째 선한 마법사의 공격 능력은 aia_i, 방어 능력은 bib_i이다. jj번째 악한 마법사의 공격 능력은 cjc_j, 방어 능력은 djd_j이다.

싸움을 시작하기 전에 각 진영은 자기 팀에서 연속된 마법사들을 고른다. LL번째와 RR번째 마법사가 선택되면 같은 팀의 L+1,L+2,…,R−1L+1, L+2, \ldots, R-1번째 마법사도 함께 선택된다. 선택된 마법사끼리만 싸운다.

당신은 편을 들지 않는 중립 관객이다. 어느 쪽이 이기는지보다 싸움의 볼거리에 관심이 있다. 서로 다른 팀의 마법사 쌍 중 하나라도 충분히 치열하게 싸우지 않으면 당신은 불만족스럽다. 선한 마법사 ii와 악한 마법사 jj의 싸움 강도는 두 마법사의 공격 능력 합을 방어 능력 합으로 나눈 값이다.

f(i,j)=ai+cjbi+djf(i, j) = \dfrac{a_i + c_j}{b_i + d_j}

선한 마법사 pp번째부터 qq번째까지(p≤qp \leq q)와 악한 마법사 rr번째부터 ss번째까지(r≤sr \leq s)의 전체 싸움 강도는 선택된 모든 쌍의 강도 중 최솟값이다.

min⁡i=pqmin⁡j=rsf(i,j)\min\limits_{i = p}^{q}\min\limits_{j = r}^{s} f(i, j)

qq개의 가정 상황을 생각해 보았다. 각 상황에서 선한 마법사 정확히 xx명과 악한 마법사 정확히 yy명이 선택된다고 할 때, 가능한 싸움 강도의 최댓값은 얼마인가?

입력

첫 줄에는 테스트 케이스의 개수 TT(1≤T≤1051 \leq T \leq 10^5)가 주어진다.

각 테스트 케이스의 첫 줄에는 세 정수 nn, mm, qq(1≤n,m,q≤1051 \leq n, m, q \leq 10^5)가 주어진다. 각각 스베토자르 팀의 마법사 수, 다른 팀의 마법사 수, 가정 상황의 수이다.

둘째 줄에는 nn개의 정수 a1,…,ana_1, \ldots, a_n이, 셋째 줄에는 nn개의 정수 b1,…,bnb_1, \ldots, b_n이 주어진다. 넷째 줄에는 mm개의 정수 c1,…,cmc_1, \ldots, c_m이, 다섯째 줄에는 mm개의 정수 d1,…,dmd_1, \ldots, d_m이 주어진다.

이어지는 qq개의 줄에는 각각 두 정수 xx, yy(1≤x≤n1 \leq x \leq n, 1≤y≤m1 \leq y \leq m)가 주어진다. 가정 상황에서 선택되는 선한 마법사 수와 악한 마법사 수이다.

모든 ai,bi,cj,dja_i, b_i, c_j, d_j는 1 이상 1000 이하이다. 모든 테스트 케이스에 걸쳐 (n+m)⋅q(n + m) \cdot q의 합은 2⋅1052 \cdot 10^5을 넘지 않는다.

출력

각 테스트 케이스마다 qq개의 줄을 출력한다. 각 줄에는 해당 상황에서 가능한 싸움 강도의 최댓값을 실수 하나로 출력한다. 절대 오차 또는 상대 오차가 10−610^{-6} 이하이면 정답으로 인정한다.

힌트

첫 번째 테스트 케이스에서 각 싸움의 강도는 다음과 같다.

첫 번째 선한 마법사: 11, 11, 11, 11

두 번째 선한 마법사: 78\frac{7}{8}, 89\frac{8}{9}, 910\frac{9}{10}, 1011\frac{10}{11}

세 번째 선한 마법사: 79\frac{7}{9}, 45\frac{4}{5}, 911\frac{9}{11}, 56\frac{5}{6}

두 번째 테스트 케이스에는 마법사가 두 명뿐이며, 그 싸움의 강도는 1000+11+1000=1\frac{1000 + 1}{1 + 1000} = 1이다.

예제1

  1. 예제 1

    입력
    2
    3 4 5
    1 1 1
    2 3 4
    6 7 8 9
    5 6 7 8
    1 1
    1 2
    2 1
    3 3
    3 4
    1 1 1
    1000
    1
    1
    1000
    1 1
    
    예상 출력
    1.000000000
    1.000000000
    0.909090909
    0.800000000
    0.777777778
    1.000000000