#include using namespace std; void primeFactors(long n, vector &v) { while (n%2 == 0) { v.push_back(2); n = n/2; } for (size_t i = 3; i <= sqrt(n); i+=2) { while (n%i == 0) { v.push_back(i); n = n/i; } } if (n > 2) v.push_back(n); } long getmoves(vector& v, size_t idx) { if(idx) { return 1 + (v[idx] * getmoves(v, idx-1)); } else { return 1+v[0]; } } long longestSequence(vector a) { long moves = 0; vector v; for(size_t i = 0; i < a.size(); ++i) { if(a[i] > 1) { primeFactors(a[i], v); sort(v.begin(), v.end()); //for(auto item : v) //{ // cout << item << endl; //} moves += getmoves(v, v.size()-1); v.clear(); } else { moves += a[i]; } } return moves; } int main() { int n; cin >> n; vector a(n); for(int a_i = 0; a_i < n; a_i++){ cin >> a[a_i]; } long result = longestSequence(a); cout << result << endl; return 0; }