1. 문제설명
임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.
n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.
2. 제한사항
● n은 1이상, 50000000000000 이하인 양의 정수입니다.
3. 입출력 예시
n result 121 144 3 -1
4. 나의 풀이
public long solution(long n)
{
long answer = -1;
//System.Math.Sqrt()매서드를 사용. 괄호 안 수의 제곱근을 구하는 코드.
double x = Math.Sqrt(n);
//answer는 long변수이니까 형변환을 해줘야 함.
if (x % 1 == 0) answer = ((long)x + 1) * ((long)x + 1);
return answer;
}
'C# > 프로그래머스 코딩 문제 풀이' 카테고리의 다른 글
[프로그래머스 C#] Lv.1 나머지가 1이 되는 수 찾기 (0) | 2024.01.18 |
---|---|
[프로그래머스 C#] Lv.1 x만큼 간격이 있는 n개의 숫자 (0) | 2024.01.18 |
[프로그래머스 C#] Lv.1 하샤드 수 (0) | 2024.01.18 |
[프로그래머스 C#] Lv.1 평균 구하기 (0) | 2024.01.18 |
[프로그래머스 C#] Lv.0 옹알이(1) (0) | 2024.01.17 |