https://programmers.co.kr/learn/courses/30/lessons/12934
문제 분석
- Math의 제곱근을 구할 수 있는 sqrt함수를 사용하여 입력받은 숫자가 어떤 수의 양의 제곱이라면 어떤 수에 1을 더하고 제곱하여 반환한다.
- 어떤 수의 양의 제곱이 아니라면 -1을 반환한다.
문제 풀이
1. Math.sqrt를 사용하여 제곱근을 구하고 해당 숫자를 1로 나누어 나머지가 0인 경우 양의 제곱근이기때문에 구한 제곱근에 1을 더하고 다시 제곱을 구한다.
2. 양의 제곱근이 아닌 경우 answer에 -1을 넣고 출력한다.
import java.lang.Math;
class Solution {
public long solution(long n) {
long answer = 0;
if(Math.sqrt(n)%1==0){
answer = (long)Math.pow((Math.sqrt(n)+1),2);
}else{
answer = -1;
}
return answer;
}
}
'Algorithm > programmers' 카테고리의 다른 글
programmers 자연수 뒤집어 배열로 만들기 (0) | 2022.01.23 |
---|---|
programmers 정수 내림차순으로 배치하기 (0) | 2022.01.16 |
programmers 제일 작은 수 제거하기 (0) | 2022.01.16 |
programmers 짝수와 홀수 (0) | 2022.01.16 |
programmers 최대공약수와 최소공배수 (0) | 2022.01.16 |