시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 5 2 2 40.000%

문제

밑면이 반지름이 r인 원이고 윗면이 반지름이 R인 사발이 있다. (윗면을 뚫려있다) 그리고 옆면이 직선이다. N개의 사발이 주어져 있을 때, 이 사발을 적절한 순서로 쌓을 때 최소 높이를 구하는 프로그램을 작성하시오. (단 사발의 두께는 무시하는 걸로 하자)

사발의 쌓는 모양을 그림으로 표현하면 대략 다음과 같다.

입력

첫 번째 줄에는 사발의 개수 n(2<=n<=9)가 주어진다. 그리고 두 번째 줄부터 n+1번째 줄까지 각 사발의 정보가 주어지는데 각 줄에는 h,r,R 세 개의 정수가 빈칸을 사이에 두고 차례로 주어진다. h는 높이를 의미하고, r은 밑면의 반지름, R은 윗면의 반지름을 의미한다. (0 < h,r,R < 1000  , r<R)

출력

첫째 줄에 최소 높이를 출력한다. (단 결과를 버림하여 정수값으로 출력한다.)

예제 입력

3
50 30 80
35 25 70
40 10 90

예제 출력

55

힌트