from math import sqrt
def solution(n):
x = sqrt(n)
return (x+1)**2 if x == int(x) else -1
풀이
1. x에 sqrt(n)의 값을 넣어준다. (n의 제곱근)
2. x와 int(x)가 같다면 (제곱근이 존재) : x+1의 제곱 반환
3. 같지 않다면 (제곱근 존재 X) : -1 반환
math의 sqrt는 제곱근을 구해준다.
해당 제곱근이 자연수로 나왔을 경우, 특정 수의 제곱 값이 된다.
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Lv1 - 짝수와 홀수 (파이썬) (0) | 2022.03.25 |
---|---|
[프로그래머스] Lv1 - 제일 작은 수 제거하기 (파이썬) (0) | 2022.03.25 |
[프로그래머스] Lv1 - 정수 내림차순으로 배치하기 (파이썬) (0) | 2022.03.24 |
[프로그래머스] Lv1 - 자연수 뒤집어 배열로 만들기 (파이썬) (0) | 2022.03.24 |
[프로그래머스] Lv1 - 자릿수 더하기 (파이썬) (0) | 2022.03.24 |