728x90
https://www.acmicpc.net/problem/1297
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] temp = br.readLine().split(" ");
int diagonal = Integer.parseInt(temp[0]);
int height = Integer.parseInt(temp[1]);
int width = Integer.parseInt(temp[2]);
//소수점이 나올 경우, 그 수보다 작은면서 가장 큰 정수 출력 (floor)
double res = Math.sqrt(Math.pow(diagonal, 2) / (Math.pow(height, 2) + Math.pow(width, 2)));
System.out.print((int)Math.floor(res*height) + " ");
System.out.println((int)Math.floor(res*width));
}
}
※ 피타고라스의 정리
: 직각삼각형에서 빗변 길이의 제곱은 빗변을 제외한 두 변의 각각 제곱의 합과 같다.
※ Math 관련
제곱근(루트) 구하기
Math.sqrt() : 입력값과 출력값은 모두 double형. Math.sqrt(대상숫자)를 넣어주면 된다.
ex) Math.sqrt(9); // 9의 제곱근
Math.pow() : 입출력값 모두 double형. Math.pow(대상숫자, 지수) 넣어주면됨.
ex) Math.pow(3, 2); // 3의 제곱
Math.floor(); -> 내림(바닥으로 floor)
Math.ceil(); -> 올림(천장으로 ceiling)
Math.round(); -> 반올림(반올림 round)
3가지 모두 double형으로 반환
728x90
'Algorithm' 카테고리의 다른 글
[Java] 백준 2420번 (0) | 2021.11.04 |
---|---|
[Java] 백준 1712번 손익분기점 (0) | 2021.11.03 |
[Java] 백준 5554번 심부름 가는 길 (0) | 2021.11.02 |
[Java] 백준 3046번 R2 (0) | 2021.11.02 |
[Java] 백준 3003번 킹, 퀸, 룩, 비숍, 나이트, 폰 (0) | 2021.11.02 |