본문 바로가기

알고리즘/Python 기초

파이썬 - 정수 제곱근 판별(lv.1)

문제 ) 프로그래머스 - 정수 제곱근 판별(lv.1)

📌 문제 설명

임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.

n 양의 정수 x 제곱이라면 x+1 제곱을 리턴하고, n 양의 정수 x 제곱이 아니라면 -1 리턴하는 함수를 완성하세요.

 

📌 제한 사항

  • n 1이상, 50000000000000 이하인 양의 정수입니다.

📌 입출력 예

n return
121 144
3 -1

✏️ 제곱근 - **0.5, **(1/2)

def solution(n):
    a = n ** 0.5
    if a % 1 == 0:
        return (a + 1) ** 2
    else:
        return -1