문제: 제곱수 판별하기
어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.
정답:
def solution(n):
if (n**(0.5)).is_integer():
return 1
else:
return 2
설명: is_integer()함수를 새롭게 알았는데 float형에서 정수로 표현될 수 있는 지 판단하는 메소드이다.
애초에 int인 변수는 판단할 수 없고, 실수형 float가 들어갔을때 True인지, False인지 판단할 수 있다.
정답2) Carrotww , 김예진 , 나똥 , 최상 외 3 명
def solution(n):
for i in range(1, n):
if n == i*i:
return 1
return 2
설명: is_integer()없이 코드를 쓴다면 이게 가장 심플할듯
정답3) Sehyeon Jeong , ovi6626 , 김병민 , 이주현 외 14 명
import math
def solution(n):
return 1 if int(math.sqrt(n)) ** 2 == n else 2
설명: 와 sqrt 까먹었당 역시 이렇게 까먹은 거 기억해내려고하는게 바로 코테 입문이지~ 좌절금지~노낙담 킵고잉 ㅇㅇ
'PYTHON' 카테고리의 다른 글
프로그래머스 파이썬 코딩테스트연습 입문 오답노트 한 번만 등장한 문자_python 알파벳순으로 문자열 정렬 구분자.join(sorted()) (0) | 2023.06.26 |
---|---|
파이썬 프로그래머스 코딩테스트 연습 2차원 만들기_.tolist() (0) | 2023.05.09 |
파이썬 프로그래머스 코딩테스트 입문 오답 노트 최빈값 구하기 (0) | 2023.05.06 |
프로그래머스 코딩테스트 입문 오답노트 분수의 덧셈 (0) | 2023.05.05 |
프로그래머스 파이썬 코딩 테스트 입문 오답 노트 - 숨어있는 숫자의 덧셈(1) (0) | 2023.05.03 |