업데이트:

❓ 문제


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

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

>  제한 조건


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

✔️ 풀이


1
2
3
4
def solution(n):
    return (n**.5 + 1)**2 if n**.5 == int(n**.5) else -1
    # 또는
    return -1 if n**.5 % 1 else (n**.5+1)**2

Notice: 이 게시물은 programmers.co.kr 사이트를 참고하였습니다.

댓글남기기