시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 256 MB | 1738 | 935 | 645 | 54.111% |
3차원 좌표 평면 위에 선분 하나와 점 하나가 있다. 선분의 양 끝점은 A(Ax, Ay, Az)와 B(Bx, By, Bz)로 나타낼 수 있다. 점의 좌표는 C(Cx, Cy, Cz) 이다.
선분과 점 사이의 거리의 최솟값을 구하는 프로그램을 작성하시오.
두 점 (x1, y1, z1)과 (x2, y2, z2) 사이의 거리는 \(\sqrt{(x2-x1)^2+(y2-y1)^2+(z2-z1)^2}\) 이다.
첫째 줄에 선분과 점의 좌표 Ax, Ay, Az, Bx, By, Bz, Cx, Cy, Cz가 주어진다. 좌표는 0보다 크거나 같고, 10,000보다 작거나 같은 정수이다.
첫째 줄에 선분과 점 사이의 거리의 최솟값을 출력한다. 절대/상대 오차는 10-6까지 허용한다.
0 0 0 1 1 1 2 2 2
1.7320508076
0 0 0 10 10 10 5 5 5
0.0000000000
10 20 30 40 50 60 45 35 25
28.2842712475
0 0 0 1 1 1 0 0 1
0.8164965809
0 0 0 1 0 1 0 1 0
1.0000000000
0 0 0 1 1 1 7 6 5
8.7749643874