만드는 중입니다

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

세 가지 주사위

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

요약
D1이 D2를 이기는 두 주사위가 주어질 때, D1과 비기거나 이기는 D3 중 D2에 대한 최소 점수와, D2와 비기거나 지지 않는 D3 중 D1에 대한 최대 점수를 구합니다.
난이도

어려움10점 중 8점

유형
확률, 정렬, 그리디, 누적 합
정답자
아직 제출이 없습니다

문제

주사위가 어떻게 굴러가는지 보자. 유명한 일화에 따르면 워런 버핏이 빌 게이츠에게 간단한 주사위 게임을 제안했다. 버핏은 주사위를 세 개 가지고 있었다. 첫 번째 플레이어가 주사위를 살펴보고 하나를 고른다. 두 번째 플레이어는 남은 주사위 중 하나를 고른다. 두 사람은 각자의 주사위를 굴려 더 큰 수가 나오기를 겨룬다. 버핏은 빌에게 먼저 고르게 해 주겠다고 했지만, 빌은 함정이 있다고 의심해 두 번째를 택했다. 그 선택은 옳았다. 이 주사위들은 비이행적 주사위였기 때문이다. 첫 번째 주사위는 두 번째를 이기고, 두 번째는 세 번째를 이기지만, 첫 번째는 세 번째를 이기지 못한다.

이를 정식으로 정의하자. 각 면에 양의 정수가 적힌 면을 하나 이상 가진 모든 모양을 '주사위'라고 한다. 주사위를 굴리면 면 하나가 균일한 확률로 선택된다. 두 주사위를 서로 굴릴 때 선택된 면의 수가 더 큰 쪽이 1점을 얻는다. 두 수가 같으면 각 주사위가 1/2점씩 얻는다. 두 주사위 DD와 D′D'에 대해 score(D,D′)score(D, D')는 DD가 D′D'와 한 번 굴려서 얻는 점수의 기댓값이다. score(D,D′)>12score(D, D') > \frac{1}{2}이면 DD가 D′D'에 대해 우위에 있다고 한다. score(D,D′)=12score(D, D') = \frac{1}{2}이면 두 주사위는 비긴다. 예를 들어 DD의 면이 1, 1, 6, 6, 8, 8이고 D′D'의 면이 2, 4, 9이면 score(D,D′)=49score(D, D') = \frac{4}{9}, score(D′,D)=59score(D', D) = \frac{5}{9}이므로 D′D'가 DD에 대해 우위에 있다.

D1D_1이 D2D_2에 대해 우위에 있는 두 주사위 D1D_1, D2D_2가 주어진다. 이 둘과 비이행적 삼중항을 이루는 세 번째 주사위 D3D_3를 찾고자 한다. D1D_1에 대해 우위에 있거나 비기는 모든 D3D_3 중에서 score(D3,D2)score(D_3, D_2)의 최솟값을 구하라. 이 값이 12\frac{1}{2}보다 작으면 비이행적 삼중항을 만들 수 있다. 마찬가지로, D2D_2가 D3D_3에 대해 우위에 있거나 비기는 모든 D3D_3 중에서 score(D3,D1)score(D_3, D_1)의 최댓값을 구하라.

입력

입력은 두 줄이며, 각 줄은 주사위 하나를 나타낸다. 두 주사위 중 하나가 다른 하나에 대해 우위에 있다. 우위에 있는 주사위가 D1D_1이고, 나머지가 D2D_2이다. 각 줄의 첫 정수는 면의 개수 nn (1≤n≤1051 \le n \le 10^5)이다. 이어서 nn개의 정수 fif_i가 주어지며, 각 fif_i는 ii번째 면에 적힌 수다 (1≤fi≤1091 \le f_i \le 10^9).

출력

한 줄에 두 값을 출력한다. 첫 번째는 조건을 만족하는 D3D_3 중 score(D3,D2)score(D_3, D_2)의 최솟값이고, 두 번째는 조건을 만족하는 D3D_3 중 score(D3,D1)score(D_3, D_1)의 최댓값이다. 두 값이 반드시 같은 D3D_3에서 나올 필요는 없다. 절댓값 오차가 10−610^{-6} 이하이면 정답으로 인정한다.

예제2

  1. 예제 1

    입력
    6 1 1 6 6 8 8
    3 2 4 9
    
    예상 출력
    0.291666667 0.750000000
    
  2. 예제 2

    입력
    4 9 3 7 5
    3 4 2 3
    
    예상 출력
    0.500000000 0.500000000