sqrt(n)
을 res에 넣어주고 1로 나눈 나머지가 0이면 제곱근으로 판단한다.- 제곱근인 경우
pow()
를 이용해서 res+1의 제곱값을 리턴한다.- 제곱근이 아니면 -1을 리턴한다.
# 프로그래머스 Lv1 - 정수 제곱근 판별
# 문제링크: https://programmers.co.kr/learn/courses/30/lessons/12934
from math import * # 파이썬 수학 라이브러리
def solution(n):
answer = 0
res = sqrt(n)
if res%1 == 0:
answer = int(pow(res+1,2))
else:
answer = -1
return answer
단순하면서도 살짝 어려운 문제의 느낌인데 sqrt()를 이용하고 1로 나누었을 때의 나머지 값으로 제곱근을 판단하는 것이 이 문제의 핵심인 것 같다. 초반에는 시간이 걸렸지만 문제의 풀이 순서를 정리하다보니 해결할 수 있었다.