题解 | #质数因子#
质数因子
https://www.nowcoder.com/practice/196534628ca6490ebce2e336b47b3607
def is_prime(n): if n <= 1: return False elif n <= 3: return True elif n % 2 == 0 or n % 3 == 0: return False i = 5 while i * i <= n: if n % i == 0: return False i += 2 else: return True def try(a = int(input())): b = [] c = [] if is_prime(a): print(int(a)) for i in [2,3,5]: if not is_prime(a): while a%i == 0: print(i, end=' ') a //= i if is_prime(a): print(int(a)) return for i in range(7,a//2+1): if is_prime(i): b.append(i) for i in b: if a % i == 0: c.append(i) for i in c: if not is_prime(a): while a%i == 0: print(i, end=' ') a /= i if is_prime(a): print(int(a)) return try()