[프로그래머스] 정수 제곱근 판별
class Solution { public long solution(long n) { long answer = 0; int sqrt = (int)Math.sqrt(n); if(Math.pow(sqrt,2)==n){ answer = (long) (sqrt+1)*(sqrt+1); }else{ answer = -1; } return answer; } } 1. 자료형을 잘 이용해야 했다. 2. Math.sqrt는 double형 루트값을 내보내주므로 이것을 int형으로 캐스팅하여 sqrt에 담는다. 3. 루트씌운값이 정수였다면 다시 제곱해주었을때 n이 되어야한다. 4. 조건을 만족하면 long으로 캐스팅하여 다시 answer을 정해주어야한다.
2020.06.21