코딩테스트/백준-Java
[백준 자바] 2417번(정수 제곱근) - 큰 수 제곱근
gamzaggang7
2024. 6. 27. 15:38
728x90
실버 4
문제
정수가 주어지면, 그 수의 정수 제곱근을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 정수 n이 주어진다. (0 ≤ n < 263)
출력
첫째 줄에 q2 ≥ n인 가장 작은 음이 아닌 정수 q를 출력한다.
728x90
BigInteger.sqrtAndRemainder()를 사용해 제곱근과 나머지를 구한다.
나머지가 0이 아니라면, 즉 정수 제곱근이 아니면 제곱근 값을 올림한다.
import java.io.*;
import java.math.BigInteger;
public class Main2417 {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
BigInteger N = new BigInteger(br.readLine());
BigInteger[] sqrt = N.sqrtAndRemainder();
if (!sqrt[1].equals(BigInteger.ZERO))
sqrt[0] = sqrt[0].add(BigInteger.ONE);
bw.write(sqrt[0].toString());
bw.flush();
br.close();
bw.close();
}
}
728x90