#include #include //#define DEBUG #define NMAX 100000000 #define PRI_MAX 10000 /*root(MAX)*/ using namespace std; int main(){ int hur[PRI_MAX+1]; int N; int sN; int c[30]; int var; int judg; cin>>N; sN=(int)sqrt((double)N)+1; for(int i=0;i<=sN;i++) hur[i]=false; hur[0]=true; hur[1]=true; var=0; for(int i=0;i<=sN;i++){ if(hur[i]!=true){ for(int j=i;j<=sN;j+=i){ hur[j]=true; } if(N%i==0&&N!=1){ c[var]=0; while(N%i==0){ N/=i; c[var]++; } var++; } } } if(N!=1){ c[var]=1; var++; } #ifdef DEBUG for(int i=0;i