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

JIHYUN·2021년 9월 25일
0
post-thumbnail

📌정수 제곱근 판별

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

📌제한사항

  • n은 1이상, 50000000000000 이하인 양의 정수입니다.

📌입 출력 예

nreturn
121144
3-1

📌사용 언어 : JAVA

📌solution

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

😎 풀이

0에서 n까지 수를 하나씩 증가시켜 가면서 만약 i의 제곱이 n이 된다면 answeri+1의 제곱을 넣어주고, 아니라면 -1을 반환한다. 처음에 int형으로만 풀었더니 테스트케이스 몇 개가 실패가 나길래 long타입으로 바꾸어 주었더니 잘 돌아간다!

profile
이것저것 공부중

0개의 댓글