资源限制
时间限制:10.0s 内存限制:256.0MB
问题描述
设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出2 * 3。输入20,输出2 * 2 * 5。
样例
与上面的样例输入对应的输出。
例:
数据规模和约定
输入数据中每一个数在int表示范围内。
import java.util.Scanner;
public class Main {
//因式分解
public static String factor(int num) {
StringBuilder sb = new StringBuilder();
int i = 2;//从小到大枚举因子
while(num != 1) {
if(num % i == 0) {
sb.append(i).append("*");
num /= i;
}else {
i++;
}
}
String res = sb.toString();
return res.substring(0, res.length() - 1);//去掉最后的 *
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
sc.close();
System.out.println(factor(n));
}
}