#include using namespace std; long long bf(long long n){ long long d = 2; while(n > 1){ while (n % d == 0) n /= d; d++; if (d * d > n){ if (n > 1) return n; break; } } return d - 1; } long long moves(long long n, map m){ if (m.count(n)) return m[n]; long long p = bf(n); long long ans = 1 + p * moves(n/p,m); m.insert({n,ans}); return ans; } long long longestSequence(vector a, map m) { long long ans = 0; for (int i = 0; i < a.size(); i++) ans += moves(a[i],m); return ans; } int main() { int n; cin >> n; vector a(n); map m = {{1,1}}; for(int a_i = 0; a_i < n; a_i++){ cin >> a[a_i]; } long long result = longestSequence(a,m); cout << result << endl; return 0; }