/*input 3 1 7 24 */ #include #include using namespace std; using namespace __gnu_pbds; #define REP(i,j,k) for(int i = j ; i < k ; ++i) #define RREP(i,j,k) for(int i = j ; i >=k ; --i) #define A first #define B second #define mp make_pair #define pb emplace_back #define PII pair #define MEM(i,j) memset(i , j , sizeof i) #define ALL(i) i.begin() , i.end() #define DBGG(i,j) cout << i << " " << j << endl #define DB4(i,j,k,l) cout << i << " " << j << " " << k << " " << l << endl #define IOS cin.tie() , cout.sync_with_stdio(0) // #define endl "\n" ///------------------------------------------------------------ #define int long long #define MAX 500 #define INF 0x3f3f3f3f int n , x[MAX]; int solve(int now){ vector sol; int tmp = now , cnt = now + 1; REP(i , 2 , tmp){ if(i * i > tmp) break; else if(tmp % i == 0){ while(tmp % i == 0){ tmp /= i; sol.pb(i); } } } if(tmp != 1) sol.pb(tmp); sort(ALL(sol) , greater()); // for(auto to : sol) cout << to << " " ; cout << endl; REP(i , 1 , sol.size()) sol[i] = sol[i] * sol[i - 1]; REP(i , 0 , (int)sol.size() - 1) cnt += sol[i]; return now == 1 ? 1 : cnt; } int32_t main(){ IOS , cin >> n; REP(i , 1 , n + 1) cin >> x[i]; int ans = 0; REP(i , 1 , n + 1) ans += solve(x[i]); cout << ans << endl; return 0; }