공부공간

BOJ - 2417 ) 정수제곱근 본문

알고리즘/구현,시뮬

BOJ - 2417 ) 정수제곱근

개발자가될수있을까? 2021. 8. 1. 17:46


 

https://www.acmicpc.net/problem/2417

 

2417번: 정수 제곱근

정수가 주어지면, 그 수의 정수 제곱근을 구하는 프로그램을 작성하시오.

www.acmicpc.net


Long 범위에서 제곱근을 찾는다. sqrt의 결과를 두번곱한것이 

 

입력된 숫자와 같다면 제곱근이고, 아니라면 +1한숫자를 리턴한다.

 


import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {

	public static void main(String[] args) throws Exception {
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		long num = Long.parseLong(br.readLine());
		long half = (long) Math.sqrt(num);
		if(pow(half) == num) {
			System.out.println(half);
		} else {
			System.out.println(half+1);
		}
	}

	private static long pow(long half) {
		return half*half;
	}

}

Comments