#include #include #include #include #include using namespace std; int main() { int n; cin >> n; vector a(n); for (int i = 0; i < n; i++) { cin >> a[i]; } long long total = 0; for (long long alen : a) { ++total; if (alen > 1) { std::vector pfactors; // obtain all prime factors while (alen % 2 == 0) { alen /= 2; pfactors.push_back(2); } for (size_t i = 3 ; i <= alen; i += 2) { while (alen % i == 0) { alen /= i; pfactors.push_back(i); } } // reverse sort prime factors (largest prime first) sort(pfactors.begin(), pfactors.end()); reverse(pfactors.begin(), pfactors.end()); // perform spliting game long long nsplit = 1; for (long long pfactor : pfactors) { nsplit *= pfactor; total += nsplit; } } } std::cout << total << std::endl; return 0; }