#11948. 问题 [014]:因式分解

问题 [014]:因式分解

问题 [014]:因式分解 (难度:简单) 竞技编程-提高思维

题目描述 给定一个自然数N,进行素因数分解,输出N的素因数,按从小到大的顺序输出。如果某个素因数能多次整除N,则输出多次。

输入格式 输入包含一个整数N,表示需要进行素因数分解的数值。

  • 2 ≤ N ≤ 10^12
  • N是一个整数

输出格式 输出N的素因数,每个素因数之间用空格隔开。如果某个素因数能够多次整除N,则输出多次该素因数。

示例

输入示例 1:

10

输出示例 1:

2 5

解释:10的素因数为2和5,10 = 2 × 5。

输入示例 2:

36

输出示例 2:

2 2 3 3

解释:36的素因数为2和3,36 = 2 × 2 × 3 × 3。

时间复杂度分析 进行素因数分解的时间复杂度为O(√N),因为我们只需要检查小于等于√N的数字是否能整除N。对于最大值10^12,算法能够在规定时间内完成。