백준 : 11653 - 소인수분해(python)

지환·2023년 8월 28일
0

백준(python)

목록 보기
20/67

출처 | https://www.acmicpc.net/problem/11653

코드

N = int(input())

if N == 1:
    print('')
    
else:
    for i in range(2,N+1):
        if N % i == 0:
            while N%i==0:
                print(i)
                N = N/i
  • 분명히 고려해야 될 부분은 시간복잡도다. O(n^2) 개선점이 필요함.

개선 코드

n = int(input())

i = 2
while(n > 1):
    if n % i == 0:
        n = n / i
        print(i)
        i = 2
    else:
        i += 1
profile
아는만큼보인다.

0개의 댓글