만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

2차원 좌표변환

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

요약
각 테스트 케이스마다 직교 좌표 (x, y)와 극좌표 (r, θ)를 서로 변환합니다.
난이도

쉬움10점 중 2점

유형
수학, 구현
정답자
아직 제출이 없습니다

문제

2차원 공간에서 점의 위치를 나타내는 방법은 여러 가지가 있다. 가장 많이 쓰이는 직교좌표계는 x축과 y축 방향의 1차원 위치로 점의 위치를 나타낸다. 이 문제에서는 점의 2차원 위치를 나타내는 또 다른 방식을 소개한다. 편의상 점 PP의 직교좌표계상 좌표를 (x,y)(x, y)라 하자.

  • 극좌표계: OP‾\overline{OP}의 길이를 rr, x축의 양의 방향을 동경으로 하여 OP→\overrightarrow{OP}까지 시계 반대 방향으로 잰 각을 θ\theta라 할 때, PP의 좌표는 (r,θ)(r, \theta)이다. (r≥0r \ge 0; 0≤θ<2π0\le\theta\lt 2\pi) 단, r=0r=0인 경우 θ=0\theta=0으로 정의한다.

직교좌표계와 극좌표계 중 하나를 사용하는 PP의 좌표가 주어졌을 때, 이를 다른 하나의 좌표계를 사용하는 좌표로 바꿔보자.

입력

첫째 줄에 테스트 케이스의 수 TT가 주어진다. (1≤T≤1 000)(1\le T\le 1\,000)

둘째 줄부터 테스트 케이스가 주어진다. 각 테스트 케이스는 2개의 줄로 이루어져 있다.

테스트 케이스의 첫째 줄에는 변환할 좌표의 좌표계 번호가 주어진다. 1은 직교좌표계, 2는 극좌표계이다.

테스트 케이스의 둘째 줄에는 변환할 좌표를 나타내는 두 실수 aa, bb가 소수점 아래 여덟째 자리까지 주어진다. (a,b)(a, b)는 직교좌표계의 경우 (x,y)(x, y)이고, 극좌표계의 경우 (r,θ)(r, \theta)이다. (−100≤x,y≤100;(-100\le x, y\le 100; 0≤r≤100)0 \le r \le 100)

출력

각 테스트 케이스마다 한 줄에 변환한 좌표를 나타내는 두 실수를 출력한다.

절대오차 혹은 상대오차는 10−610^{-6}까지 허용한다.

예제3

  1. 예제 1

    입력
    2
    1
    1.00000000 2.00000000
    2
    2.23606798 1.10714872
    
    예상 출력
    2.23606798 1.10714872
    1 2
    
  2. 예제 2

    입력
    2
    1
    -1.00000000 -2.00000000
    2
    2.23606798 4.24874137
    
    예상 출력
    2.23606798 4.24874137
    -1 -2
    
  3. 예제 3

    입력
    2
    1
    0.00000000 0.00000000
    2
    0.00000000 0.00000000
    
    예상 출력
    0 0
    0 0