题目描述
请你帮小瓜将正整数n分解质因数,并从小到大输出所有的质因数(如果一个质因数出现多次,则输出多次)。
输入
一行一个正整数n,保证1<=n<=10^8。
输出
若干行,每行表示n的一个质因数。按从小到大的顺序输出质因数。
输入样例
12
输出样例
2
2
3
解题思路
1.首先我们要明白,任意一个>=2的正整数,都可以分解为P1×P2×P3×……×Pn,其中Pi为质数,Pi之间可以相等
(唯一分解定理)
2.定理包括两个断言:
(1)断言1:数n可以以某种方式分解成素数乘积。
(2)断言2:仅有一种这样的因数分解。(除因数重排外).
核心代码
想了好久都没找到核心代码(emm……)
完整代码
#include<bits/stdc++.h>
using namespace std