본문 바로가기

Plo Algorithm

프로그래머스 Lv1 정수 제곱근 판별

정수 제곱근 판별

class Solution {
    public long solution(long n) {
            long answer = 0;
            
            double doubleN = Math.sqrt(n);  //입력받은 n을 long으로 형변환 Math.dqrt()함수를 통해 제곱근을 구해줌
            if (doubleN % 1 == 0) {         //제곱근을 1로나눈 값이 0일 때 : 1로 나눠떨어지므로 소수점 값이 없다. (양의 정수의 제곱이다.)
                answer = (long)doubleN;     // answer에 doubleN을 할당.
                answer = answer +1;         //answer +1해준 후 
                answer = answer * answer;   //answer * answer
            }else {                         //else일 때 -1을 할당.
                answer = -1 ;
            }
            return answer;
    }
}

다른 풀이들을 보고 뜯어보며 공부하려 했지만

푸는 방법들이 비슷비슷한 것 같아 내가 풀이했던 코드를 그대로 가져왔다.

Math.sqrt()

인자로 들어온 값의 루트를 구해준다.