건너 뛴 학교 HugeGun_
시간 제한 : 메모리 제한을 1000MS : 65,536킬로바이트를
제목 설명
HugeGun 자매는 생략 학교를 좋아했다. 불행하게도,이 시간은 그녀가 발견되었다.
교사는 교실을 청소하는 그녀에게 물었다. 그녀는 갑자기 벽 및 바닥의 그림자에 빗자루 바로 위에서 광 이후 벽에 빗자루, 직각 삼각형을 구성하는 것으로되면.
그녀는 알고 싶다, 직각 삼각형의 직각 모서리의 측면 길이를 계산하는 방법을 주어진 영역의 빗변과 삼각형의 모서리의 길이.
현명한 물론 당신은 그녀를 도울 것입니다.
기입
정수 제 라인 N- 데이터 세트의 개수를 나타내며, n은-
이어서, N- 개의 정수의 라인 N- L , S의 L은 각각 빗변의 영역의 크기와 길이를 나타내는 (S)
수출
출력 N- N 행
먼저 나는 내가 행동 내가에게 데이터의 I-응답 세트 :
당신은 직각 측면 길이 조건, 출력을 만족 찾을 수없는 경우 hhhg
.
그렇지 않으면, 두 개의 소수점의 출력 , B , A는 B를 만족시키기 위해 필요 직각 측면 길이 나타내고 <= B = A <B를
SAMPLE INPUT
3
5 6
7 8
1 2
샘플 출력
3.00 4.00
2.44 6.56
hhhg
데이터 범위
1 ≤ L ≤ 10 6
0 ≤ S ≤ L 2
[솔루션] 내 질문
이것은 삼각형 A, B, L의 빗변의 양측에 형성되고;
S = 2분의 1 * A * B;
L ' (2) = 의 2 + . ㄱ 2 ;
해결 방정식에 답해야합니다.
#INCLUDE <STDIO.H> #INCLUDE <math.h> #INCLUDE < 문자열 .H> INT 의 main () { 이중 A, B, L, S로 이루어진 그룹 중에서 선택되고; 이중 GEN1, 세대; INT N; scanf와 ( " %의 D ' , N); 반면 (N-- ) { scanf와 ( " % LF % LF " , L,은 S); 경우 (L * L < 4 * S) { 의 printf ( " hhhg \ n " ); 계속 ; } GEN1 = SQRT (1- ℓ * 4 * S); 세대 = SQRT (L * L + 4 * S);= (세대 GEN1 +) / 2 ; B = (- 2 세대 GEN1) / 2 ; 의 printf ( " % .2lf % .2lf \ n " , B, A); } 반환 0 ; }
방문해 주셔서 감사합니다! ❤