标签:算法
#include <cstdio>
#include <iostream>
using namespace std;
#ifdef ONLINE_JUDGE
#define FINPUT(file) 0
#define FOUTPUT(file) 0
#else
#define FINPUT(file) freopen(file,"r",stdin)
#define FOUTPUT(file) freopen(file,"w",stdout)
#endif
bool isPrime(int n)
{
int i;
if(n==2||n==3)
return true;
for(int i=2;i*i<=n;i++)
{
if(n%i==0)
return false;
}
return true;
}
int main()
{
FINPUT("in.txt");
FOUTPUT("out.txt");
int n;
while(cin>>n && n)
{
if(n==1)
cout<<0<<endl;
else if(isPrime(n))
cout<<1<<endl;
else
{
int k = 0;
for(int i=2;i<=n && n>1;i++)
{
while(n%i==0)
{
n/=i;
k++;
}
}
cout<<k<<endl;
}
}
return 0;
}标签:算法
原文地址:http://blog.csdn.net/daringpig/article/details/25559417