Baekjoon/단계별로 풀어보기

[백준][9단계 약수,배수와 소수] 11653번 /소인수분해 (파이썬/Python)

junslee 2025. 4. 11. 11:41

1. 문제 설명

2. 코드

N = int(input())
while N != 1:
    for i in range(2,int(N**0.5)+1):
        if N % i == 0:
            print(i)
            N //= i
            break
    else:
        print(N)
        break

3. 풀이 과정

N에 정수로 입력받는다.

N이 1이 될때까지 반복하는 while문을 작성한다.

2부터 N의 제곱근까지 반복해서 i를 반복한다.

i가 N의 약수라면 i를 출력하고 N을 i로 나눈 몫으로 초기화하고 break로 for문을 빠져나온다.

break를 가지 않고 for문을 끝내면 else문을 실행해서 N을 출력하고 break한다.