Notice
Recent Posts
Recent Comments
Link
jyamethyst21 님의 블로그
프로그래머스 - '제곱수 판별하기' (PYTHON 풀이) 본문
문제:

n을 입력받았을 때, n이 제곱수라면 1, 아니라면 2를 출력하는 문제이다.
제곱수란 '2*2=4'와 같이 같은 수를 곱한 수를 의미한다.
풀이:
def solution(n):
for i in range(1, 1001):
if i*i==n:
return 1
elif i*i>n:
return 2
return 2
문제 자체에 1,000,000까지 제한이 있기 때문에 반복문을 활용하여서 1부터 1000까지만 반복문을 돌도록 하였다.
i를 제곱했을 때 n이라면 1을 리턴하고(제곱수이므로), 그렇지 않으면 2를 리턴하는 로직으로 코드를 작성하였다.
n보다 i*i가 큰 경우여야 하는 이유는 작은 경우로 작성 시 문제가 발생하기 때문이다.
예를 들어, 부등호가 '<'이고 n이 9, i가 1인 경우 3이 제곱수이지만 '1<9'의 조건이 되어 2가 리턴된다.
원하지 않은 값이 리턴되므로 상기와 같이 '>'로 작성을 하여야 한다.
'CODING 💻' 카테고리의 다른 글
| 프로그래머스 - '세균 증식' (PYTHON 풀이) (0) | 2026.06.02 |
|---|---|
| 프로그래머스 - '약수 구하기' (PYTHON 풀이) (0) | 2026.06.01 |
| 프로그래머스 - '문자열안에 문자열' (PYTHON 풀이) (0) | 2026.05.30 |
| 프로그래머스 - '자릿수 더하기' (PYTHON 풀이) (0) | 2026.05.29 |
| 프로그래머스 - 'n의 배수 고르기' (PYTHON 풀이) (0) | 2026.05.28 |
