
처음에 틀렸다. 테스트케이스 3, 6, 13이 틀림.
찾아보니, sqrt 메서드는 소수8번째자리까지만 반환하므로, ceil을 통해 소숫점 존재시 올림값을 주는게 안전하다고 한다.
class Solution {
public long solution(long n) {
long answer = -1;
if (n==Math.pow(Math.ceil(Math.sqrt(n)),2)) {
answer = (long) Math.pow(Math.ceil(Math.sqrt(n))+1, 2);
}
return answer;
}
}'프로그래머스 문제풀이 > Level 1' 카테고리의 다른 글
| 두 정수 사이의 합 (자바, Java) (0) | 2022.12.23 |
|---|---|
| 나머지가 1이 되는 수 찾기 (자바, Java) (0) | 2022.12.23 |
| 정수 내림차순으로 배치하기 (자바, Java) (0) | 2022.12.22 |
| x만큼 간격이 있는 n개의 숫자 (자바, Java) (0) | 2022.12.17 |
| 자연수 뒤집어 배열로 만들기 (자바, Java) (0) | 2022.12.17 |