35改错,谢谢
#include<iostream>
using namespace std;
long long n,cnt,m,q,a[1000000];
bool zs(long long n){
if(n==1) return 0;
for(long long i=2;i*i<=n;i++) if(n%i==0) return false;
return true;
}
long long zys(long long n){
long long cnt=0;
for(long long i=2;i*i<=n;i++) if(n%i==0) while(n%i==0) n/=i,cnt++;
return cnt+1; //2*3*5
}
int main(){
cin>>q;
if(q==1) cout<<2;
else if(q==1||zs(q)) cout<<"1\n0";
else if(zys(q)==2) cout<<2;
else{
cout<<"1\n";
for(long long i=2;i*i<=q;i++) if(q%i==0) if(zs(i)) m=q/i; cout<<m;
}
}