dosic2   3년 전

아마 함수에서 자기자신을 호출하면서 시간 초과가 되는것 같은데 이럴땐 어떻게 하나요?

uc07012hi   3년 전

a가 2부터 x까지 돌기 때문에 시간초과가 뜬 거 같습니다.

a*a가 x보다 작거나 같을 때까지만 반복문을 돌리시면 시간초과가 안 뜰 거 같습니다.

dosic2   3년 전

함수가 문제인줄 알고 아래의 코드를 짜서 시도했는데 시간이 들긴 해도 해결됬습니다

알려주셔서 감사합니다

x = int(input())

a = 2

while True:

if x % a == 0:
print(a)
x = x//a
continue
if x % a != 0:
a += 1
if x == 1:
break

댓글을 작성하려면 로그인해야 합니다.