#include <iostream>
#include <string>
#include <stack>
#include <valarray>
using namespace std;
bool f(int a) {
if (a <= 1) {
cout << "no";
return false;
}
double bound = sqrt(a);
for (int i = 2; i <= bound; ++i) {
if (a % i == 0) {
return false;
}
}
return true;
}
int su(int a, int b) {
for (int i = a; i < b; ++i) {
if (f(i)) {
// cout<<"i:"<<i<<endl;
return i;
}
}
return -1;
}
int main() {
int a, sum = 0, i = 2;
cin >> a;
int x = a;
while (a != 1) {
int t = su(i, x);
if (a % t == 0) {
// cout<<"t:"<<t<<endl;
a = a / t;
sum++;
if (f(a)) { //因为数太大,有时会超时,就加这个代码直接判断a是不是素数,是的话直接返回,会快的多
sum++;
break;
}
i = 2;
} else {
i++;
}
}
cout << sum;
}