파이썬 알고리즘 문제풀이-Section 2 (K번째 약수)

dobyming·2022년 1월 19일
0
post-thumbnail

*본 문제는 인프런 김태원 강사님의 파이썬 알고리즘 문제풀이 강의에 기반합니다. 파이썬 알고리즘 문제풀이

*개발환경: VS Code Python 3.8

1 - K번째 약수 출력

; 두 개의 자연수 n과 k가 주어졌을때
n의 약수들 중 k번째로 작은 수를 출력하는 프로그램

n, k= map(int,input("자연수 N과 K번째 숫자를 입력하세요: ").split())
cnt=0

for i in range(1,n+1):
    if n%i==0:
        cnt+=1
    if cnt==k:
        print(i)
        break
else:
    print(-1)

여기서 주목해야 될 점은, 여러개의 값을 받는것이 관건인데 이때 사용되는 함수가 split()과 map 함수이다.

input.split()으로 값을 여러개 받는데 이는 사실 문자열 리스트이기 때문에 각각의 요소를 정수로 인식할 수 없는데 이를 보완해주는 함수가 바로 map()함수이다.

0개의 댓글