[백준/파이썬] 2501번 약수 구하기 풀이

업데이트:



문제 정보


풀이

문제

정수 N의 약수를 오름차순으로 나열했을 때 K번째 약수를 구하는 문제입니다. 없으면 0을 출력합니다.

코드

n,k=map(int,input().split())
c=0
for i in range(1, n//2+1):
    if n%i==0:
        c+=1
        if c==k:break
if c==k:
    print(i)
elif c+1==k:
    print(n)
else:
    print(0)

설명

1부터 N//2까지 약수를 세어 K번째를 찾고, 끝까지 못 찾은 경우 N 자체가 K번째인지 확인해 처리합니다.



댓글남기기