내 코드
class Solution {
public long solution(long n) {
long num = (long) Math.sqrt(n);
if(n == num*num){
return (num+1)*(num+1);
} else {
return -1;
}
}
}
이 문제의 핵심은 sqrt() 함수였다
루트의 역할을 하는 함수로 25를 넣으면 5가 나온다
pow()
double result = Math.pow(2, 4);
System.out.println(result); //16.0
int resultInt = (int) Math.pow(2.5, 3);
System.out.println(resultInt); //15
pow() 함수는 제곱근으로 곱하는 함수로 Math.pow(2, 4) 은 2의 4제곱 이라고 보면 된다 값은 16.0
Math.pow(2.5, 3) 은 2.5의 3제곱으로 값이 15가 나온다
sqrt()
double a = 16;
double b = 10;
System.out.println(Math.sqrt(a)); // 4.0
System.out.println(Math.sqrt(b)); // 3.1622776601683795
sqrt() 함수는 제곱근을 나누는 함수로 루트를 씌운다고 보면 된다
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스/Java] LV.1 자연수 뒤집어 배열로 만들기 (0) | 2022.09.19 |
---|---|
[프로그래머스/Java] LV.1 평균 구하기 (0) | 2022.09.16 |
[프로그래머스/Java] LV.1 자릿수 더하기 (0) | 2022.09.13 |
[프로그래머스/Java] LV.1 나머지가 1이 되는 수 찾기 (0) | 2022.09.13 |
[프로그래머스/Java] LV.1 완주하지 못한 선수 (0) | 2022.08.16 |