输入样例:
630
输出样例:
3
5*6*7
思路
两层for循环找到所有的因子,并且用start记录下第一个因子 最后再遍历
java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
long n=s.nextInt();
long start=0,len=0;
long sum=0;
for(int i=2;i<Math.sqrt(n);i++) {
sum=1;
for(int j=i;sum*i<=n;j++) {
sum*=j;
if(n%sum==0&&j-i+1>len) {
start=i;
len=j-i+1;
}
}
}
if(start==0) {
start=n;
len=1;
}
System.out.println(len);
for(int i=0;i<len-1;i++) {
System.out.print(start+i+"*");
}
System.out.print(start+len-1);
}
}