| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 512 MB | 310 | 98 | 63 | 31.188% |
3차원 공간에서 점의 위치를 표현하는 방식은 여러 가지가 있다. 일반적으로 많이 쓰이는 직교좌표계는 x축, y축, z축 방향의 1차원 위치를 통해 점의 위치를 표현한다. 이 문제에서는 점의 3차원 위치를 표현하는 또 다른 두 가지 방식을 소개한다. 편의상 점 $P$의 직교좌표계상 좌표를 $(x, y, z)$라 하자.
직교좌표계, 원통좌표계, 구면좌표계 중 하나를 사용하는 $P$의 좌표가 주어졌을 때, 이를 다른 하나의 좌표계를 사용하는 좌표로 바꿔보자.
첫째 줄에 테스트 케이스의 수 $T$가 주어진다. $(1\le T\le 1,000円)$
둘째 줄부터 테스트 케이스가 주어진다. 각 테스트 케이스는 2ドル$개의 줄로 이루어져 있다.
테스트 케이스의 첫째 줄에는 변환할 좌표의 좌표계 번호와 출력할 좌표의 좌표계 번호가 주어진다. 1은 직교좌표계, 2는 원통좌표계, 3은 구면좌표계이다. 두 좌표계 번호는 서로 다르다.
테스트 케이스의 둘째 줄에는 변환할 좌표를 나타내는 세 실수 $a,ドル $b,ドル $c$가 소수점 아래 여덟째 자리까지 주어진다. $(a, b, c)$는 직교좌표계의 경우 $(x, y, z)$이고, 원통좌표계의 경우 $(r, \phi, z)$이고, 구면좌표계의 경우 $(\rho, \theta, \phi)$이다. $(-100\le x, y, z\le 100;$ 0ドル \le r, \rho \le 100)$
각 테스트 케이스마다 한 줄에 변환한 좌표를 나타내는 세 실수를 출력한다.
절대오차 혹은 상대오차는 10ドル^{-6}$까지 허용한다.
6 1 2 1.00000000 2.00000000 3.00000000 1 3 1.00000000 2.00000000 3.00000000 2 1 2.23606798 1.10714872 3.00000000 2 3 2.23606798 1.10714872 3.00000000 3 1 3.74165739 0.64052231 1.10714872 3 2 3.74165739 0.64052231 1.10714872
2.23606798 1.10714872 3 3.74165739 0.64052231 1.10714872 1 2 3 3.74165739 0.64052231 1.10714872 1 2 3 2.23606798 1.10714872 3
6 1 2 -1.00000000 -2.00000000 -3.00000000 1 3 -1.00000000 -2.00000000 -3.00000000 2 1 2.23606798 4.24874137 -3.00000000 2 3 2.23606798 4.24874137 -3.00000000 3 1 3.74165739 2.50107034 4.24874137 3 2 3.74165739 2.50107034 4.24874137
2.23606798 4.24874137 -3.00000000 3.74165739 2.50107034 4.24874137 -1 -2 -3 3.74165739 2.50107034 4.24874137 -1 -2 -3 2.23606798 4.24874137 -3.00000000
6 1 2 0.00000000 0.00000000 0.00000000 1 3 0.00000000 0.00000000 0.00000000 2 1 0.00000000 0.00000000 0.00000000 2 3 0.00000000 0.00000000 0.00000000 3 1 0.00000000 0.00000000 0.00000000 3 2 0.00000000 0.00000000 0.00000000
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0