
어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을, 아니라면 2를 return하도록 solution 함수를 완성해주세요.
n ≤ 1,000,000| n | result |
|---|---|
| 144 | 1 |
| 976 | 2 |
입출력 예 #1
144는 12의 제곱이므로 제곱수입니다. 따라서 1을 return합니다.
입출력 예 #2
976은 제곱수가 아닙니다. 따라서 2를 return합니다.
class Solution {
public int solution(int n) {
int answer = 0;
int count = 1;
while (true){
if(count * count == n){
answer = 1;
break;
}else if(count * count > n){
answer = 2;
break;
}
count++;
}
return answer;
}
}
count의 초기값 : 어떤수의 제곱수인지 구하기 위한 변수이기에 초기값을 1로 선언함.
count * count == n : 제곱수인지 확인하는 if 조건문임.
count * count > n : 이미 제곱수가 아닌것을 알았으므로 while문을 빠져 나오는 else if 조건문임.