본문 바로가기
[업무 지식]/Algorithm

[sqrt] 정수 제곱근 판별

by 에디터 윤슬 2024. 12. 16.

링크

https://school.programmers.co.kr/learn/courses/30/lessons/12934

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

문제

정답 1

# math.sqrt() 함수 사용
# `sqrt_n.is_integer()`는 `sqrt_n`이 정수인지 확인


import math

def solution(n):
    sqrt_n = math.sqrt(n)
    if sqrt_n.is_integer():
        return int((sqrt_n + 1) ** 2)
    else:
        return -1

정답 2

# 반복문을 통한 제곱수 확인

def solution(n):
    x = 1
    while x * x < n:
        x += 1
    if x * x == n:
        return (x+1) ** 2
    else:
        return -1