Blog

제곱수 판별하기

문제 #

어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.

  • 제한사항

    • 1 ≤ n ≤ 1,000,000

  • 입출력 예

    n result
    144 1
    976 2

나의 풀이 #

// 테스트를 통과하였지만, 테스트케이스에 따라 오답이 됨을 확인함
class Solution {
    public int solution(int n) {
        int answer = 0;
        
        answer = Math.sqrt(n) == 0 ? 1 : 2;
        
        return answer;
    }
}
class Solution {
    public int solution(int n) {
        int answer = 0;

        answer = Math.pow((int)Math.sqrt(n),2) == n ? 1 : 2;
        return answer;
            
    }
}

다른 사람의 풀이 #

//다른 사람의 풀이중 참조할 코드를 적는다.

관련개념 학습 #

  • 제곱근을 구하는 sqrt함수를 이용하였다.
  • ctrl + p로 내가 필기한 내용 중에서 관련내용이 있는지 찾아서 그 페이지의 링크를 복사하여 붙혀넣는다.
  • 필기 페이지에도 이 문제의 링크를 복사하여 “관련 문제"라고 써놓고 붙혀넣는다.