👩‍💻 코테 공부/코테 공부

[코테 - Java] 프로그래머스 - 정수 제곱근 판별

수댕ʕت̫͡ʔ 2024. 9. 21. 18:43

https://school.programmers.co.kr/learn/courses/30/lessons/12934#

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

1. 문제

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

2. 내가 푼 답안

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

3. 문법 정리

- 자바는 타입을 중요하게 생각해야한다.

long, double, int ..등등

 

- 그리고 Math 클래스

ex) Math.sqrt() / Math.pow()

 

1) Math.sqrt()

  • 제곱근을 계산한다
  • 반환 타입 : double

2) Math.pow()

  • 주어진 밑과 지수의 거듭제곱을 계산한다.
  • 반환 타입 : double