본문 바로가기

코딩 테스트 연습/알고리즘

[ 코딩 테스트 ] 정수 제곱근 판별

문제

조건

정답

public class Solution {
    public long solution(long n) {
        long answer = 0;
        for (long i=1; i * i <= n; i++) {
            if (i * i == n) {
                answer = (i+1) * (i+1);
            } else {
                answer = -1;
            }
        }      
        return answer;
    }
}

 


 

후기

 

풀고 나서 다른 방법있나 찾아보니까 Math 클래스의 sqrt(), pow() 메서드가 있었다

 

sqrt( ) 는 제곱근을 구할 수 있다

제곱근을 구하고 싶은 수를 넣으면 되고

 

pow(n, x) 는 제곱을 구할 수 있다

n 은 제곱근을 구하고 싶은 수를 넣고 x에는 몇번 제곱할 건지 넣으면 된다

 

이 메서드를 사용하면 코드가 훨씬 간단해질 것 같다