#include<iostream>
#include<stdio.h>
#include<string.h>
#include<cmath>
using namespace std;
int main()
{
int e;cin>>e;
int flag=1;
int tep=1,flag1=0,flag2,left,right;
int sz=-1,maxx=-1;
for(int i=2;i<=sqrt(e);i++)
{
int sum=i*tep;
if(flag&&e%sum==0)
{
tep=i;
left=flag1=i;
right=flag2=i;
flag=0;
maxx=sz=1;
continue;
}
if(e%sum==0)
{
if(tep==1)
{flag1=i;
//cout<<flag1<<endl;
sz=0;}
sz++;
flag2=i;
tep=sum;
continue;
}
if(maxx<sz)
{maxx=sz;
left=flag1;right=flag2;}
if(flag1!=0&&tep!=1)
{i=flag1;//cout<<i<<endl;
tep=1;}
}
if(maxx==-1)
{
cout<<"1"<<endl<<e<<endl;
}
else{
cout<<maxx<<endl;
for(int i=left;i<right;i++)
cout<<i<<"*";
cout<<right<<endl;
}
}
https://blog.csdn.net/qq_37729102/article/details/80712640