만드는 중입니다

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

Nikanor는 게임을 좋아한다

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

요약
각 친구의 양면 동전 숫자와 판돈이 주어질 때, a*b의 가격을 치르고 동전 (a, b)를 사서 기대 이익을 최대로 만드는 문제다. 동점은 니카노르의 승리로 처리한다.
난이도

어려움10점 중 8점

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

문제

Nikanor는 여가 시간을 모두 게임에 쓴다. 그래서 대학에서 낮은 성적을 받지만, 그건 다른 이야기다. 그는 도박도 좋아한다. 이 문제에서는 "Orlyanka"라는 게임을 변형한 것을 다룬다. 두 명의 플레이어가 있고, 각자 동전을 하나씩 가진다. 동전의 양면에는 정수가 하나씩 적혀 있다. 플레이어들은 각자 동전을 던지고, 더 큰 수가 나온 쪽이 이긴다. 각 동전에서 양면이 나올 확률은 같다고 가정한다.

오늘 밤 Nikanor는 친구들과 이 게임을 한다. Nikanor에게는 nn명의 친구가 있고, 각 친구와 xix_i루블을 걸고 게임을 한 판씩 한다. 다행히도 Nikanor는 ii번째 친구가 aia_i와 bib_i가 적힌 동전을 가지고 있다는 것을 알고 있다. Nikanor가 친구를 이기면 xix_i루블을 받는다. 그렇지 않으면 친구에게 xix_i루블을 준다. Nikanor와 친구가 같은 값을 던지면 Nikanor가 이긴 것으로 한다.

이제 Nikanor는 모든 게임에 쓸 동전 하나를 사러 가게에 갈 것이고, 동전 가격을 고려해 기대 이익을 최대화하려 한다. 이 가게에서 aa와 bb가 적힌 동전의 가격은 a⋅ba \cdot b루블이다. Nikanor는 양의 정수가 적힌 어떤 동전이든 살 수 있다.

Nikanor가 올바른 결정을 내리기는 너무 어렵다... Nikanor는 기대 이익이 최대가 되도록 동전을 고르는 일을 도와달라고 부탁한다.

입력

첫째 줄에는 친구의 수를 나타내는 정수 nn이 주어진다 (1≤n≤2⋅1051 \le n \le 2 \cdot 10^5).

다음 nn개 줄에는 각각 세 정수 aia_i, bib_i, xix_i가 주어진다 (1≤ai,bi,xi≤1091 \le a_i, b_i, x_i \le 10^{9}). 이는 ii번째 친구의 동전에 적힌 수와 ii번째 판의 걸린 금액(루블)을 나타낸다.

출력

최대 기대 이익을 나타내는 정수 하나를 출력한다.

절대 오차 또는 상대 오차가 10−610^{-6}을 넘지 않으면 정답으로 인정된다.

형식적으로, 제출한 답을 aa, 출제진의 답을 bb라 하자. ∣a−b∣max⁡(1,∣b∣)≤10−6\frac{|a-b|}{\max(1,|b|)} \le 10^{-6}일 때에만 정답으로 인정된다.

예제2

  1. 예제 1

    입력
    2
    1 4 15
    3 5 10
    
    예상 출력
    2.5000000000
    
  2. 예제 2

    입력
    1
    2 2 8
    
    예상 출력
    4.0000000000