상자는 얼마나 커야 할까?

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

문제

이안은 캘리포니아로 가려고 짐을 싸야 하는데, 그중에는 그가 모은 원들도 있습니다. 주어진 원들의 집합에 대해, 그 원들을 모두 담을 수 있는 가장 작은 직사각형 상자를 찾는 프로그램을 작성하세요.

모든 원은 상자의 바닥에 닿아야 합니다. 아래 그림은 어떤 원들의 집합에 대한 하나의 올바른 배치를 보여 줍니다(그 원들에 대한 최적의 배치가 아닐 수도 있습니다). 이상적인 배치에서는 각 원이 적어도 다른 한 원과 닿아 있게 됩니다.

상자 바닥을 따라 놓인 원들의 올바른 배치 예시

입력

첫 번째 줄에는 하나의 양의 정수 $n$ ($n \le 100$)이 주어지며, 이는 뒤따르는 자료 줄의 개수입니다. 다음 $n$개의 줄은 각각 하나의 배치 문제를 나타냅니다. 각 줄은 그 줄에 있는 원의 개수인 양의 정수 $m$ ($m \le 8$)으로 시작하고, 그 뒤에 $m$개의 원의 반지름이 이어집니다. 반지름은 정수가 아닐 수도 있습니다.

출력

각 자료 줄마다(즉 첫 번째 줄을 제외한 모든 줄에 대해), 그 줄의 원들을 담을 수 있는 가장 작은 상자의 너비를 출력하세요. 각 답은 한 줄에 하나씩, 소수점 아래 정확히 세 자리까지 출력합니다. 값이 1보다 작은 경우가 아니라면 앞에 0을 붙이지 마세요(예: 0.543).