코딩/공부

[Python] 백준 11653번 - 소인수분해

취미니스트 2023. 10. 10. 16:22
728x90
반응형

문제

https://www.acmicpc.net/problem/11653

 

정수 하나를 입력받고 소인수분해를 위한 변수 하나 생성. 2부터 나누기 위해 2를 저장

n = int(input())
m = 2

나누고자 하는 숫자가 입력한 숫자보다 작은 동안 반복

while m <= n:

2부터 나누어 떨어질 경우 해당 숫자를 출력 후 입력한 숫자를 몫으로 변경

그리고 다시 2부터 나눠보기 시작

그렇지 않을 경우 나누고자 하는 숫자를 1 증가

if n % m == 0:
    print(m)
    n //= m
    m = 2
    continue
m += 1

전체 코드

n = int(input())
m = 2
while m <= n:
    if n % m == 0:
        print(m)
        n //= m
        m = 2
        continue
    m += 1
728x90
반응형

'코딩 > 공부' 카테고리의 다른 글

[Python] 백준 10039번 - 평균 점수  (0) 2023.10.10
[Python] 백준 2753번 - 윤년  (0) 2023.10.10
[Python] 백준 10817번 - 세 수  (0) 2023.10.10
[Python] 백준 9498번 - 시험 성적  (0) 2023.10.10
[Python] 백준 2935번 - 소음  (1) 2023.10.10