만드는 중입니다

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

표적 조준

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

요약
지면에서 선분이 가장 넓게 보이는 지점을 찾아 그 최대 각도를 도 단위로 출력합니다.
난이도

보통10점 중 6점

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

문제

카즈키는 포격 게임을 한다. 평평한 땅 위 공중에 표적이 하나 걸려 있는데, 이 표적은 비스듬히 기울어져 있어서 땅과 수직이 아니다. 카즈키는 땅 위의 어느 지점에서든 쏠 수 있고, 표적이 가장 넓게 보이는 자리에 서고 싶어 한다. 이때 표적이 보이는 각도의 최댓값을 도 단위로 구하라.

세계는 2차원 평면이고 y축은 하늘을 향한다. 땅은 x축이다. 표적은 두 끝점 (X1,Y1)(X_1, Y_1)과 (X2,Y2)(X_2, Y_2)를 잇는 선분이다.

땅 위의 점 (X,0)(X, 0)에서 표적이 보이는 각도는 (X1,Y1)(X_1, Y_1), (X,0)(X, 0), (X2,Y2)(X_2, Y_2)가 이루는 각 중 꼭짓점이 (X,0)(X, 0)인 각이다. 각도를 최대로 만드는 XX가 정수라는 보장은 없다.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. 이어지는 TT개의 줄에는 표적의 두 끝점 좌표인 네 정수 X1X_1, Y1Y_1, X2X_2, Y2Y_2가 공백으로 구분되어 주어진다.

제한

  • 1≤T≤1001 \le T \le 100
  • X1≠X2X_1 \ne X_2
  • 1≤Y1,Y2≤1000001 \le Y_1, Y_2 \le 100000
  • −100000≤X1,X2≤100000-100000 \le X_1, X_2 \le 100000

출력

각 테스트 케이스마다 Case #t: Z 형식으로 한 줄씩 출력한다. t는 1부터 시작하는 테스트 케이스 번호이고, Z는 표적이 보이는 각도의 최댓값을 도 단위로 나타낸 값이다. Z는 소수점 아래 넷째 자리까지 반올림해 항상 네 자리를 채워 출력한다. 예를 들어 정확히 90도인 답은 90.0000으로 출력한다.

예제1

  1. 예제 1

    입력
    3
    1 1 3 1
    -2 1 -1 2
    0 2 3 3
    
    예상 출력
    Case #1: 90.0000
    Case #2: 45.0000
    Case #3: 63.8059