프로그래머스_LV.0_제곱수 판별하기

Dreamer ·2022년 12월 6일
0

코딩테스트 준비

목록 보기
21/93

1. quiz

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

2. answer

def solution(n):
    sqrt = n ** (1/2)
    if sqrt % 1 == 0:
        return 1
    else:
        return 2

3. 다른 사람의 풀이

def solution(n):
    return 1 if (n ** 0.5).is_integer() else 2
def solution(n):
    return 1 if (n ** 0.5) % 1 == 0 else 2
import math

def solution(n):
    return 1 if int(math.sqrt(n)) ** 2 == n else 2
  • 이번 문제는 n ** (1/2)가 제곱근이라는 것과, 숫자를 1로 나눴을 때 나머지가 0이면 정수라는 것만 인지한다면 쉽게 해결할 수 있는 문제였다.
  • 다른 사람의 풀이들도 모두 형태만 조금씩 다를 뿐 다 같은 논리이다.
profile
To be a changer who can overturn world

0개의 댓글