#include using namespace std; long long int a; int isPrime(long long int n) { // Corner cases if (n <= 1) return 0; if (n <= 3) return 0; // This is checked so that we can skip // middle five numbers in below loop if (n%2 == 0) { return 2; } if(n%3==0) { return 3; } for (long long int i=5; i*i<=n; i=i+6) { if (n%i == 0 || n%(i+2) == 0) { if(n%i==0) return i; else if(n%(i+2)==0) return i+2; } } return 0; } int main() { long long int n; cin >> n; vector a(n); for(int a_i = 0; a_i < n; a_i++){ cin >> a[a_i]; } long long int i; long long int j; long long int k; long long int c=0; for(i=0;i1) { long long int val=isPrime(m); if(m%2==0) { while(m%2==0 && m>1) { m=m/2; k=k+m; } } else if(val==0) { k=k+1; break; } else if(m%2==1) { j=val; while(m%j!=0) { j++; } m=m/j; k=k+m; } } c=c+k; } cout<