Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- vector<int>Prime;
- int mark[10000007];
- int N=10000000;
- void Sieve()
- {
- int limit=sqrt(N)+5;
- mark[0]=mark[1]=1;
- Prime.push_back(2);
- for(int i=4; i<=N; i+=2)
- {
- mark[i]=1;
- }
- for(int i=3; i<=N; i+=2)
- {
- if(mark[i]==0)
- {
- Prime.push_back(i);
- if(i<=limit)
- {
- for(int j=i*i; j<=N; j+=(i*2))
- {
- mark[j]=1;
- }
- }
- }
- }
- }
- int main()
- {
- Sieve();
- long long int m,c=0;
- scanf("%d",&m);
- long long int arr[m];
- for(int i=0; i<m; i++)
- {
- scanf("%d",&arr[i]);
- }
- for(int k=0; k<Prime.size(); k++)
- {
- for(int i=0; i<m; i++)
- {
- if(arr[i]==Prime[k])
- c++;
- }
- }
- printf("%lld\n",c);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement