728x90
반응형

에라토스네테스의 체를 사용해 소수만 찾아 풀 수도 있지만 시간이 넉넉해서 그냥 반복문 하나만 사용해서 풀었다.

EX) n = 72

1) 72 % 2 = 0 -> 2 출력 -> n = 72//2 = 36

2) 36 % 2 = 0 -> 2 출력 -> n = 36//2 = 18

3) 18 % 2 = 0 -> 2 출력 -> n = 18//2 = 9

4) 9 % 3 = 0 -> 3 출력 -> n = 9//3 = 3

5) 3 % 3 = 0 -> 3 출력 -> n = 3//3 = 1 -> n이 1이므로 반복문 종료

n = int(input())
while(n != 1):
    for i in range(2, n+1):
        if n % i == 0:
            print(i)
            n = n //i
            break
728x90
반응형

+ Recent posts