만드는 중입니다

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

직각삼각형의 나머지 한 변

면접 대비

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

요약
직각삼각형의 세 변 중 두 변이 주어지고 나머지 한 변이 -1로 표시될 때, 빠진 변의 길이를 구하거나 직각삼각형이 될 수 없음을 판정한다.
난이도

쉬움10점 중 3점

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

문제

컴퓨터를 이용하면 수학 계산이 한결 쉬워진다. 다음 예를 살펴보자. 세 변의 길이가 aa, bb, cc 인 삼각형에서 cc 가 빗변이고 a2+b2=c2a^2 + b^2 = c^2 을 만족하면, 이 삼각형을 직각삼각형이라고 한다. 이 관계식을 피타고라스의 정리라고 부른다.

직각삼각형의 세 변 가운데 두 변의 길이가 주어졌을 때, 나머지 한 변의 길이를 구하는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 한 줄이며, 직각삼각형의 세 변의 길이 aa, bb, cc 가 공백으로 구분되어 주어진다. 세 값 중 정확히 하나는 −1-1 이고, 이는 아직 알 수 없는 변의 길이를 뜻한다. 나머지 두 값은 10,000 이하의 자연수이다.

입력의 마지막 줄에는 0 0 0 이 주어지며, 이 줄은 처리하지 않는다.

출력

각 테스트 케이스마다 먼저 Triangle #k 를 한 줄에 출력한다. 여기서 kk 는 테스트 케이스의 번호로 11 부터 시작한다. 다음 줄에는 결과를 출력한다. 주어진 길이로 직각삼각형을 만들 수 있으면 s = l 을 출력하는데, ss 는 길이가 주어지지 않은 변의 이름(a, b, c 중 하나)이고 ll 은 그 길이를 소수점 셋째 자리까지 나타낸 값이다. 직각삼각형을 만들 수 없으면 Impossible. 을 출력한다.

연속한 두 테스트 케이스의 출력 사이에는 빈 줄을 하나 넣는다.

예제4

  1. 예제 1

    입력
    3 4 -1
    -1 2 7
    5 -1 3
    0 0 0
    
    예상 출력
    Triangle #1
    c = 5.000
    
    Triangle #2
    a = 6.708
    
    Triangle #3
    Impossible.
    
  2. 예제 2

    입력
    -1 3 5
    0 0 0
    
    예상 출력
    Triangle #1
    a = 4.000
    
  3. 예제 3

    입력
    6 -1 10
    0 0 0
    
    예상 출력
    Triangle #1
    b = 8.000
    
  4. 예제 4

    입력
    1 1 -1
    0 0 0
    
    예상 출력
    Triangle #1
    c = 1.414