프로그래머스/파이썬_입문

제곱수 판별하기+is_integer()

싱싱한복초이 2024. 11. 14. 12:32

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

 

프로그래머스

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

programmers.co.kr

[문제 설명]

어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.

 

[나의 풀이]

def solution(n):
    return 1 if (int(n**(1/2)))**2 == n else 2

 

[다른 풀이]

 

틀린 풀이

def solution(n):
    return 1 if isinstance(n**(1/2),int) else 2

처음에 이렇게 입력했을 때 틀렸다고 나옴

 

올바른 풀이

def solution(n):
    return 1 if (n ** 0.5).is_integer() else 2

 

 

def solution(n):
    if n**(1/2) == int(n**(1/2)) :
        return 1
    else :
        return 2
def solution(n):
    return 1 if (n ** 0.5) % 1 == 0 else 2
def solution(n):
    for i in range(1,n+1):
        if n == i * i:
            return 1
    return 2

'프로그래머스 > 파이썬_입문' 카테고리의 다른 글

세균 증식  (0) 2024.11.17
문자열안에 문자열  (0) 2024.11.15
💫OX퀴즈  (0) 2024.11.13
자릿수 더하기  (0) 2024.11.12
n의 배수 고르기  (0) 2024.11.11