정수 제곱근 판별
posted on 04 Feb 2024 under category java in series algorithm
문제 설명
임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.
n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.
제한 조건
n은 1이상, 50000000000000 이하인 양의 정수입니다.
입출력 예
n | answer |
---|---|
123 | 6 |
987 | 24 |
입출력 예 #1
문제의 예시와 같습니다.
입출력 예 #2
9 + 8 + 7 = 24이므로 24를 return 하면 됩니다.
import java.util.*;
public class Solution {
public int solution(int n) {
int answer = 0;
while(n > 0) {
answer += n % 10;
n /= 10;
}
return answer;
}
}
나머지 연산자를 바로 떠올리면 문제를 쉽게 풀 수 있다!
혼자 또 잘못된 방향으로… 생각하고 있었고.. answer에 n % 10을 해주면 1의 자리부터 구할 수 있다.
항상 문제를 풀때마다 느끼는 것은 주어진 문제에서 필요한 핵심 구문을 바로 떠올리기..아니면 삽질의 시간만 길어진다ㅠ