프로그래머스 연습문제
- Lv 1. 정수 제곱근 판별 (Python)
https://school.programmers.co.kr/learn/courses/30/lessons/12934
import math
def solution(n):
answer = -1
if ((math.sqrt(n)).is_integer()):
answer = int((math.sqrt(n) + 1) ** 2)
return answer
math.sqrt()
로 n의 제곱근을 구하고 → is_integer()
로 구한 n의 제곱근이 int
인지 판별▶️ math
를 import
할 필요 없이 그냥 1/2를 제곱하는 식으로 제곱근을 구할 수도 있다.
(a**(1/2))
▶️ is_integer()
저런 메서드가 있는지 모르고 처음에는 isdigit()
을 치다가 파이참이 오류라고 알려주며 제안해줘서 찾았던 메서드였다.
꼭 기억해두기 !!
참고 : https://icodebroker.tistory.com/entry/PYTHON-isinteger-함수를-사용해-정수-여부-구하기
value = 1.1
print(value.**is_integer()**)
"""
False
"""
▶️ 혹은 저런 메서드 없이 정수인지 판별하는 방법
a % 1 == 0
1로 나눴을 때 나머지가 0이면 정수다 … wow
정말 잘 읽었습니다, 고맙습니다!