#include using namespace std; bool sieve[1000002]; void soe() { memset(sieve, true, sizeof(sieve)); for (int p=2; p<=1000001; p++) { // If prime[p] is not changed, then it is a prime if (sieve[p] == true) { // Update all multiples of p for (int i=p*2; i<=1000001; i += p) sieve[i] = false; } } } long longestSequence(vector a) { // Return the length of the longest possible sequence of moves. vector v; soe(); long sum=0; for (int p=2; p<=1000001; p++) if (sieve[p]) v.push_back(p); for(int i=0;i1) sum+=a[i]; sum++; } return sum; } 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; }