#include <stdio.h>
#include <math.h>

int main(void)
{
    long int N;
    scanf("%ld",&N);
    long int p;
    long int p_max= sqrt(N);
    long int prime[1000];
    long int i,j,k=0;
    int flag;
    for(i=2;i<=p_max;i++){
        flag=1;
        for(j=2;j<i;j++){
            if(i%j ==0) flag=0;
        }
        if(flag==1){
            prime[k]=i;
            //printf("%ld",prime[k]);
            k++;
        }
    }
    //printf("%ld",p_max);
    //printf("k=%ld\n",k);

    int answer=0;
    long int p_e;
    i=0;
    //処理
    for(i=0;i<k;i++){
        p_e=prime[i];
        //printf("first; p_e = %ld \n",p_e);
        //printf("N　あまり　p_e = %ld\n", N%p_e);
        while(p_e<=N){
            if((N%p_e)==0){
                //printf("ok\n");
                //printf("p_e = %ld\n",p_e);
                N=N/p_e;
                answer++;
            }
            p_e= p_e*prime[i];
        }
    }
    printf("%d",answer);
    return 0;
}