#include using namespace std; long getMinFac(long num) { for(long j=2;j*j<=num;j++) if(num%j==0) return j; return -1; } long longestSequence(vector a) { // Return the length of the longest possible sequence of moves. long ans = 0; for(int i=0;i1) { long k = getMinFac(num); if(k==-1) break; ans += (num/k); num = num/k; } } return ans; } 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; }