#include #include #include #define ll long long using namespace std; ll prime[45]; int exp[45], np = 0, pidx; inline ll dfs() { if(!exp[pidx]) pidx--; if(pidx < 1) return 1; //no prime factors ll p = prime[pidx]; exp[pidx]--; return 1 + p * dfs(); } int N; ll X, Ans = 0; int main() { int i; ll k; scanf("%d", &N); for(i = 1; i <= N; i++) { scanf("%lld", &X); //clear memset(exp, 0, sizeof(exp)), np = 0; //factor for(k = 2; k * k <= X; k++) if(!(X % k)) { prime[++np] = k; while(!(X % k)) X /= k, exp[np]++; } if(X != 1) prime[++np] = X, exp[np] = 1; pidx = np; Ans += dfs(); } printf("%lld", Ans); }