https://school.programmers.co.kr/learn/courses/30/lessons/120852
def solution(n):
answer = []
x = 2
while x <= n:
if n % x == 0:
if x not in answer:
answer.append(x)
n //= x
else:
x += 1
return answer
2
부터 시작한다.answer
리스트에 담는다.n //= x
를 통해 다시 반복할 수 있게 설정한다.def is_prime(n):
for i in range(2, int(n ** 0.5) + 1):
if not n % i:
return False
return True
def solution(n):
answer = []
for i in range(2, n + 1):
if not n % i and is_prime(i):
answer.append(i)
return answer
if not n % i and is_prime(i)
에서 not
은 n % i
값만 반전하고, 이후에 and
연산이 실행된다.피드백은 언제나 환영입니다 :)