Algorithms/- 프로그래머스

프로그래머스 - 정수 제곱근 판별 [자바]

자굿 2022. 2. 1. 17:48
 

코딩테스트 연습 - 정수 제곱근 판별

임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함

programmers.co.kr

 

정답

class Solution {
    public long solution(long n) {
        long x = (long) Math.sqrt(n);

        if(n == (long)Math.pow(x, 2)){
            return (long)Math.pow(x+1, 2);
        }else{
            return -1L;            
        }
    }
}

 

분석

  • int의 입력값의 범위 대략 21억을 알고 있는지
  • java Math 라이브러리를 알고 있는지에 따라 소스 길이가 달라진다.
반응형