말파티 원
시간 제한1초메모리 제한128 MB
삼각형의 세 꼭짓점이 주어질 때 말파티 원의 반지름 세 개를 알려진 폐쇄형 공식으로 계산하는 문제입니다.
문제
삼각형이 하나 주어졌을 때, 그 내부에 원 세 개를 각 원이 나머지 두 원과 삼각형의 두 변에 모두 접하도록 그릴 수 있다. 이렇게 그린 세 원을 말파티 원(Malfatti circles)이라고 한다. 많은 수학자들이 두 세기가 넘도록 말파티 원을 연구해 왔으며, 임의의 삼각형에 대해 말파티 원은 항상 존재하고 유일하다는 사실이 증명되어 있다.
예를 들어 삼각형의 세 꼭짓점이 (20, 80), (-40, -20), (120, -20)이면 말파티 원은 다음과 같다.
- 중심 (24.281677, 45.219486), 반지름 21.565935
- 중심 (3.110950, 4.409005), 반지름 24.409005
- 중심 (54.556724, 7.107493), 반지름 27.107493
또한 세 꼭짓점이 (20, -20), (120, -20), (-40, 80)이면 말파티 원은 다음과 같다.
- 중심 (25.629089, -10.057956), 반지름 9.942044
- 중심 (53.225883, -0.849435), 반지름 19.150565
- 중심 (19.701191, 19.203466), 반지름 19.913790
삼각형이 주어졌을 때 세 말파티 원의 반지름을 구하는 프로그램을 작성하시오.
입력
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 한 줄에 여섯 개의 정수 이 공백으로 구분되어 주어진다. 이는 삼각형의 세 꼭짓점 , , 의 좌표이며, 반시계 방향 순서로 주어진다. 입력은 다음 조건을 만족한다.
- 모든 좌표는 보다 크고 보다 작다.
- 반지름이 보다 작은 말파티 원은 존재하지 않는다.
입력의 마지막 줄에는 이 여섯 개 주어지며, 이 줄은 처리하지 않는다.
출력
각 테스트 케이스마다 세 말파티 원의 반지름 , , 을 한 줄에 공백으로 구분하여 출력한다. 는 꼭짓점 에 가장 가까운 원의 반지름이다. 각 반지름은 소수점 일곱째 자리에서 반올림하여 소수점 아래 여섯 자리까지 출력한다.