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

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

재미로 하는 거야!

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

요약
서로 평행하지 않은 세 직선이 주어질 때, 한 점에서 세 직선까지의 거리 중 최댓값을 최소로 만드는 값을 구한다.
난이도

어려움10점 중 8점

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

문제

경찰관 Biteusz는 경찰서 동료들에게 장난치는 것을 좋아한다. 예를 들어, 지난번에는 친구 Bajteusz를 올해 남은 모든 일요일과 공휴일에 도시 순찰에 등록시켰다. 하지만 그 새로운 업무를 듣고 난 뒤로 Biteusz는 그다지 행복하지 않다. Biteusz는 지정된 세 거리를 순찰해야 한다. Bajtocja의 도로는 곧고 두 도로가 평행하지 않으므로, 그는 어떤 삼각형(점으로 퇴화할 수도 있음)을 순찰해야 한다. 경찰관은 가능한 한 최선의 위치에 서서, 지정된 거리로 달려가야 할 때 이동할 수도 있는 최대 거리를 최소화하려고 한다. Biteusz는 호출을 받으면 얼마나 멀리 달려야 하는지 궁금해하고 있다. 그를 도와 최소 거리를 계산하자!

입력

첫 번째 줄에는 정수 Z≤104Z \le 10^4가 주어지며, 이는 다음 줄들에 설명된 테스트 케이스의 수를 나타낸다.

각 테스트 케이스의 첫 번째 줄에는 33이 주어진다. 이는 Bajtocja에 있는 도로의 수이다. 다음 33개의 줄 각각에는 세 정수 a_ia\_i, b_ib\_i, c_ic\_i가 주어지며, 이는 ii번째 도로의 설명으로, 도로가 다음 방정식을 만족하는 직선임을 의미한다: a_ix+b_iy+c_i=0a\_{i}x + b\_{i}y + c\_i = 0

출력

각 테스트 케이스마다 Biteusz가 이동해야 하는 최소 거리를 출력해야 한다. 답은 절대 오차 또는 상대 오차가 10−610^{-6}을 초과하지 않으면 정답으로 인정된다.

제한

  • ∣a_i∣,∣b_i∣,∣c_i∣≤106|a\_i|, |b\_i|, |c\_i| \leq 10^{6}
  • ∣a_i∣+∣b_i∣>0|a\_i|+|b\_i| > 0
  • 주어진 두 직선은 평행하지 않다.

예제1

  1. 예제 1

    입력
    2
    3
    1 0 0
    0 1 0
    1 1 -1
    3
    1 1 -3
    -3 1 1
    1 0 -4
    
    예상 출력
    0.292893218813452
    1.399173588432128