#include #include #include using namespace std; long long getMoves(long long k) { long long s = 1; long long nrMoves= 1; vector primes; for (long long i = 2;i<= k ; ++i) { while (k%i == 0) { primes.push_back(i); k /= i; } } while (!primes.empty()) { nrMoves = nrMoves * primes.back(); primes.pop_back(); s = s + nrMoves; } return s; } long long longestSequence(vector a) { long long movsum = 0; for (long long i = 0; i < a.size(); ++i) { movsum = movsum + getMoves(a[i]); } return movsum; } int main() { int n; cin >> n; vector a(n); for (int a_i = 0; a_i < n; a_i++) { cin >> a[a_i]; } long long result = longestSequence(a); cout << result << endl; return 0; }