밧줄에 묶인 풍선

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

땅에 놓인 풍선이 밧줄 한 개 이상으로 땅에 박힌 고정점과 이어져 있다. 각 밧줄은 풍선과 고정점을 잇기에 충분히 길고, 두 밧줄이 서로 교차하는 일은 없다. 그림 E-1이 이런 상황을 보여 준다.

그림 E-1: 땅 위의 풍선과 밧줄

이제 풍선이 떠오른다. 밧줄 연결을 모두 유지한 채 풍선이 얼마나 높이 올라가는지 구하자. 고정점의 위치는 움직이지 않는다. 밧줄의 길이와 고정점의 위치가 주어진다. 밧줄에는 무게가 없어서 어느 방향으로 당겨도 곧게 펴진다고 가정해도 된다. 풍선은 올라가면서 옆으로도 움직일 수 있으므로 수평 위치는 자유롭다. 그림 E-2는 그림 E-1의 상황에서 풍선이 도달하는 가장 높은 위치다.

그림 E-2: 풍선이 도달하는 가장 높은 위치

입력

입력은 데이터 세트 여러 개로 이루어지고, 각 데이터 세트의 형식은 다음과 같다.

n
x1 y1 l1
...
xn yn ln

데이터 세트의 첫 줄에는 밧줄의 개수를 뜻하는 정수 nn (1n101 \le n \le 10)이 주어진다. 이어지는 nn개의 줄에는 정수 xix_i, yiy_i, lil_i가 공백 하나로 구분되어 주어진다. Pi=(xi,yi)P_i = (x_i, y_i)ii번째 밧줄이 연결된 고정점의 위치이고, lil_i는 그 밧줄의 길이다. 100xi100-100 \le x_i \le 100, 100yi100-100 \le y_i \le 100, 1li3001 \le l_i \le 300이다. 풍선은 처음에 땅 위의 (0,0)(0, 0)에 있다. 풍선과 고정점의 크기는 무시한다.

iji \ne j이면 PiP_iPjP_j는 서로 다른 위치다. 또 PiP_i(0,0)(0, 0) 사이의 거리는 li1l_i - 1 이하다. 즉 풍선은 적어도 높이 11까지는 올라간다.

그림 E-1과 E-2는 공개 테스트 케이스의 첫 데이터 세트에 해당한다.

입력의 끝은 00 하나만 있는 줄로 표시된다.

출력

각 데이터 세트마다 풍선이 도달하는 최대 높이를 소수점 아래 일곱째 자리까지 반올림해 한 줄에 출력한다. 자리가 비면 00을 채워 소수점 아래 일곱 자리를 항상 모두 적는다. 그 밖의 문자는 출력하지 않는다. 모든 테스트 데이터의 정답은 반올림 경계에서 10910^{-9} 이상 떨어져 있으므로 반올림 방향이 애매한 경우는 없다.