#include<iostream>
#include<vector>
#include<cmath>
using namespace std;
int main(){
long long n;
cin>>n;
long long minstar=0,len=0;
for(int i=2;i<=sqrt(n);i++){
long long ans=1;
for(int j=i;ans*j<=n;j++){
ans=ans*j;
if(n%ans==0){
if(j-i+1>len){
len=j-i+1;
minstar=i;
}
}
}
// cout<<minstar<<" "<<len<<endl;
}
if(minstar==0){
cout<<"1"<<endl;
cout<<n<<endl;
}
else{
cout<<len<<endl;
cout<<minstar;
for(int i=minstar+1;i<minstar+len;i++){
cout<<"*"<<i;
}
cout<<endl;
}
return 0;
}
注意刚开始红色部分j<=sqrt(n)会出现错误。
题目链接:https://www.patest.cn/contests/gplt/L1-006