#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; void sieve(int n, int* prime) { int i,j; int *prime1 = (int*)malloc((n)*sizeof(int)); prime1[1]=0; for (i=2;i<=n;i++) prime1[i]=1; for (i=2;i*i<=n;i++) { if (prime1[i]==1) { for(j=2*i;j<=n;j+=i) { prime1[j]=0; } } } int sum=0; for(i=1;i<=n;i++) { prime[i]=sum+prime1[i]; sum+=prime1[i]; // cout<> g; int max =0; vector v; for(int a0 = 0; a0 < g; a0++){ int n; cin >> n; v.push_back(n); if (n>max) { max = n; } // your code goes here } int *prime = (int*)malloc((max+1)*sizeof(int)); sieve(max, prime); int i,k; for(i=0;i