Programming/JUNGOL : 정보올림피아드&알고리즘

[JUNGOL 수학1-2809]: 약수

토토모에요 2021. 8. 25. 12:51
728x90
반응형

JUNGOL 정보올림피아드&알고리즘에서 학습용으로 문제를 가져왔습니다. 문제가 될 시 수정, 삭제하겠습니다.

http://www.jungol.co.kr/

 

문제

한 개의 정수를 입력받아 입력받은 정수의 약수를 모두 출력하는 프로그램을 작성하시오.

입력 형식

정수 N이 주어진다. (2 ≤ N ≤ 21억)

출력 형식

N의 약수를 작은 수부터 차례로 모두 출력한다.

입력 예

24

출력 예

1 2 3 4 6 8 12 24

code

import math
N=int(input())
sqrt=int(math.sqrt(N))
lst=[]
for i in range(1,sqrt+1):
    if N%i==0:
        lst.append(i)
        if N//i!=i:
            lst.append(N//i)
lst.sort()
for j in lst:
    print(j,end=' ')
반응형