정수 제곱근 판별

김나영·2023년 6월 21일
0

프로그래머스

목록 보기
33/39

문제 : 정수 제곱근 판별

풀이

if(Math.pow((int)Math.sqrt(n),2)==n){ // 다시 곱해도 n이 나오는지
   answer = (long)Math.pow((Math.sqrt(n) +1) ,2);
}
  • n의 제곱근 : Math.sqrt()

  • n의 제곱근을 제곱했을 때 n과 같다면 n + 1을 제곱하여 return

  • Math.pow() : 제곱을 구하는 함수

    • Math.pow(x,y) : x를 y만큼 곱해줌
  • long 타입으로 변환해줌

else answer =-1;
  • 그렇지 않다면 -1을 return

전체 코드

class Solution {
    public long solution(long n) {
        long answer = 0;
        if(Math.pow((int)Math.sqrt(n),2)==n){ // 다시 곱해도 n이 나오는지
            answer = (long)Math.pow((Math.sqrt(n) +1) ,2);
        } else answer =-1;
        return answer;
    }
}

0개의 댓글