티스토리 뷰

반응형

문제

정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.

입력

첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.

출력

N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다.

import math
N = int(input())
ans_list=[]
while N !=1:
    if len(ans_list)==0:
        start=2
    else:
        start=ans_list[-1]
    for i in range(start,N+1):
        if N % i==0:
            #print(i)
            ans_list.append(i)
            N=N//i
            break
        else:
            continue
print(*ans_list, sep='\n')
        
반응형

'알고리즘' 카테고리의 다른 글

백준 11279번 최대 힙 파이썬  (0) 2020.09.30
백준 11286번 절댓값 힙 파이썬  (0) 2020.09.30
백준 11724번 연결요소의 개수  (0) 2020.09.30
백준 13904번 과제 파이썬  (0) 2020.09.30
백준 2606 바이러스  (0) 2020.09.24
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함