문제
조건
정답
public class Solution {
public long solution(long n) {
long answer = 0;
for (long i=1; i * i <= n; i++) {
if (i * i == n) {
answer = (i+1) * (i+1);
} else {
answer = -1;
}
}
return answer;
}
}
후기
풀고 나서 다른 방법있나 찾아보니까 Math 클래스의 sqrt(), pow() 메서드가 있었다
sqrt( ) 는 제곱근을 구할 수 있다
제곱근을 구하고 싶은 수를 넣으면 되고
pow(n, x) 는 제곱을 구할 수 있다
n 은 제곱근을 구하고 싶은 수를 넣고 x에는 몇번 제곱할 건지 넣으면 된다
이 메서드를 사용하면 코드가 훨씬 간단해질 것 같다
'코딩 테스트 연습 > 알고리즘' 카테고리의 다른 글
[ 코딩 테스트 ] 하샤드 수 (0) | 2024.05.09 |
---|---|
[ 코딩 테스트 ] 정수 내림차순으로 배치하기 (0) | 2024.05.03 |
[ 코딩테스트 ] 문자열을 정수로 바꾸기 (0) | 2024.05.02 |
[ 코딩 테스트 ] 자연수 뒤집어 배열로 만들기 (0) | 2024.05.01 |
[ 코딩 테스트 ] x만큼 간격이 있는 n의 숫자 (0) | 2024.05.01 |