Pagini recente » Cod sursa (job #1124896) | Cod sursa (job #994662) | Cod sursa (job #196959) | Cod sursa (job #1404381) | Cod sursa (job #1469283)
#include <bits/stdc++.h>
#define Nmax 5000500
///#define Pmax 348514
#define Nrp 348515
using namespace std;
int Pmax;
array<bool,Nmax> ciur;
array<int,Nrp>prime;
int st;
void sieve(){
prime[++st] = 2;
int d;
for(auto i = 1; prime[st] <= Pmax; ++i)
if(!ciur[(i<<1)|1]){
d = (i<<1|1);
prime[++st] = d;
for(int j = 1; d*((j<<1)|1) < Nmax; ++j)
ciur[d*((j<<1)|1)] = true;
}
printf("%d\n",st-1);
}
int main()
{
freopen("ciur.in","r",stdin);
freopen("ciur.out","w",stdout);
scanf("%d",&Pmax);
sieve();
return 0;
}