Note
- 连续因子
- 主要思路需要明确。两层for循环
Code:
#include<bits/stdc++.h>
using namespace std;
//consecutive 连续不断的
int main(){
int n,max=0,maxi=2;
cin>>n;
for(int i=2;i<=(int)sqrt(n);i++){
int tmp=n,cnt=0,j=i;
while(tmp%j==0&&tmp!=0){
tmp/=j;
cnt++;
j++;
}
if(cnt>max){
max=cnt;
maxi=i;
}
}
if(max==0) cout<<"1"<<endl<<n<<endl;
else{
cout<<max<<endl;
for(int i=maxi;i<max+maxi;i++){
if(i>maxi) cout<<"*";
cout<<i;
}
}
return 0;
}