#include #include #include #include #include #include #include int prime(long int x) { int k=sqrt(x); for(int i=2;i0) { sum=sum+temp; temp=temp/k; k=lowest(temp); if(k==0) { sum=sum+temp+1; temp=0; } } } else if(prime(a[i])==1) { sum=sum+a[i]+1; } else if(a[i]%2!=0) { temp=a[i]; k=lowest(a[i]); while(temp>0) { sum=sum+temp; temp=temp/k; k=lowest(temp); if(k==0) { sum=sum+temp+1; temp=0; } } } } return sum; } int main() { int n; scanf("%i", &n); long int *a = malloc(sizeof(long int) * n); for (int a_i = 0; a_i < n; a_i++) { scanf("%li",&a[a_i]); } long int result = longestSequence(n, a); printf("%ld\n", result); return 0; }