Pagini recente » Cod sursa (job #682107) | Cod sursa (job #280434) | Cod sursa (job #903028) | Cod sursa (job #2340102) | Cod sursa (job #1233601)
#include <fstream>
#include <bitset>
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
bitset<1000005> P;
int n,i,j,k,cnt;
int main()
{
fin>>n;
if(n==2)
{
fout<<"1";
return 0;
}
if(n%2==0)
n--;
n=(n-1)/2;
cnt=1;
for(i=1;2*i*i+2*i<=n;i++)
{
j=2*i+1;
if(P[i]==0)
{
cnt++;
for(k=2*i*i+2*i;k<=n;k+=j)
P[k]=1;
}
}
for(;i<=n;i++)
if(P[i]==0)
cnt++;
fout<<cnt;
return 0;
}