/* ID: toooooEasy or RafaelSaddatimov PROG: */ #include #pragma GCC optimize("O3") #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native") #define MAX 129 #define MOD 2010 #define INF 210000000 #define EPS 1e-9 #define ll long long #define F first #define S second #define NLINE printf("\n") #define BYE(a) return 0 * printf(a) #define all(a) a.begin(), a.end() #define pb push_back #define mp make_pair using namespace std; int main() { ll n; scanf("%lld", &n); ll res = 0; while(n--) { ll cur; scanf("%lld", &cur); if(cur == 1) { res++; continue; } vector< pair > fac; for(ll i=2; i<=sqrt(cur); ++i) { ll k = 0; while(cur % i == 0) cur /= i, k++; if(k) fac.pb(mp(i, k)); } if(cur > 1) fac.pb(mp(cur, 1)); ll x = 1; for(ll i=fac.size()-1; i>=0; --i) { while(fac[i].S--) res += x, x *= fac[i].F; } res += x; } printf("%lld", res); }