https://www.acmicpc.net/problem/11653
시간 1초, 메모리 256MB
input :
output :
-한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력
소인수 분해라 해서 꼭 소수를 구해서 하지 않아도 된다...
while 문으로 n 이 1이 되기 까지 계산을 해줄 것이고.
i 가 2부터 시작해서
n을 i로 나눈 나머지가 0이면 계속 해서 소인수 분해 해주고,
0이 아니면 i의 값을 늘린다.
import sys
n = int(sys.stdin.readline())
i = 2
while n != 1:
if n % i == 0:
print(i)
n //= i
else:
i += 1
처음 풀 때 i를 돌리려는 생각으로 조건을 짜다가
while n != 2: 로 제출 해버리는 바람에 시간 초과 되었다...