Q. 정수 제곱근 판별
A.
class Solution {
public long solution(long n) {
long answer = 0;
//어떤 양의 정수 x 라 했으므로 x는 1부터 시작, x의 제곱이 n이 되야하니까 최대 n까지 x를 1씩 증가하면서 for문을 돈다.
//x제곱이 n이랑 같으면 x+1의 제곱을 반환, 다르면 -1을 반환
for(long x = 1; x <= n; x++){
if(x*x == n){
answer = (x+1)*(x+1);
break; //여기서 break를 써야 조건이 맞을 시 멈추고 빠져나온다.
}else if(x*x != n){
answer = -1;
}
}
return answer;
}
}
'알고리즘, 코딩테스트' 카테고리의 다른 글
[프로그래머스/ 코딩테스트 연습문제] 하샤드 수 (0) | 2024.11.01 |
---|---|
[프로그래머스/ 코딩테스트 연습문제] 정수 내림차순으로 배치하기 (0) | 2024.10.31 |
[프로그래머스/ 코딩테스트 연습문제] 문자열을 정수로 바꾸기 (0) | 2024.10.30 |
[프로그래머스/ 코딩테스트 연습문제] 자연수 뒤집어 배열로 만들기 (0) | 2024.10.29 |
[프로그래머스/ 코딩테스트 연습문제] x만큼 간격이 있는 n개의 숫자 (0) | 2024.10.29 |