작도하자! - ①

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

요약
길이 n인 원의 현 XY의 중점을 M이라 하고, M을 지나는 두 현으로 교점을 정해 길이 d가 주어질 때 길이 QY를 구해 소수 둘째 자리까지 출력합니다.
난이도

보통10점 중 7점

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

문제

오늘 낮에 심심해서 작도 왕인 재원이가 종이에 원 하나를 그렸다. 그 다음, 원의 임의의 현 XY를 그렸다. 현 XY의 중점을 M이라고 한 뒤, M을 지나는 현 AB, CD를 그렸다. 그리고 선분 AD와 현 XY가 만나는 점을 P, 선분 CB와 현 XY가 만나는 점을 Q라고 한다. (단, 점 A와 D는 현 XY를 기준으로 서로 반대편의 위치에 있는 점이며, 여섯 개의 점 X, Y, A, B, C, D는 모두 서로 다른 점이다.)

현 XY의 길이 n과 선분 PM의 길이 d가 주어지면 선분 QY의 길이를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 자연수 n과 d의 값이 사이에 공백을 한 개 두고 차례대로 주어진다. n과 d의 값은 1,000 이하의 양의 정수이고, d×2의 값은 n의 값보다 작다.

출력

선분 QY의 길이를 소수점 아래의 둘째 자리에서 반올림하여 출력한다. 단, 소수점 오차는 허용하지 않으며, 예를 들어 정답이 8인 경우에는 8.0과 같이 출력해야 한다.

힌트

재원이는 아래와 같이 작도를 한다. (단, 재원이가 작도한 결과는 A, B, C, D, X, Y의 위치와 n이나 d의 값으로 바뀔 수 있다.)

예제2

  1. 예제 1

    입력
    8 2
    
    예상 출력
    2.0
    
  2. 예제 2

    입력
    11 4
    
    예상 출력
    1.5