题目描述
给你一个整数n,将它拆分成他所有最小因子(大于1)的连乘形式,同时遵守最小因子优先的原则,小的因子在前面,如n=6,则输出2*3=6。
解答要求
时间限制:1000ms, 内存限制:64MB
输入
测试包含多组数据,每个测试包含一个整数n,(1<n<=1000000),输入到文件末尾结束。
输出
每个测试输出一行,即分解的结果。
样例
输入样例 1 复制
5
6
24
输出样例 1
5=5
23=6
2223=24
//we have defined the necessary header files here for this problem.
//If additional header files are needed in your program, please import here.
void result(int n)
{
int res = n;
int arg = 2;
while(true)
{
if(n % arg == 0) {
if(n == arg) {
cout << arg << "=" << res << endl;
break;
}
else {
cout << arg << "*";
n /= arg;
}
}
else {
++arg;
}
}
}
int main(){
int n;
while(cin>>n) {
result(n);
}
return 0;
}