2e8 数据量理论上可以在线性时间通过,下面的代码在Python3 超时, 但是如果使用PyPy3就可以通过。

n = int(input())
pr = 2
while n != 1:
    while n % pr == 0:
        n //= pr
        print(pr, end=' ')
    pr += 1 if pr == 2 else 2

#牛客春招刷题训练营# + 链接