Pagini recente » Cod sursa (job #2557996) | Cod sursa (job #1653694) | Cod sursa (job #2635481) | Cod sursa (job #858623) | Cod sursa (job #1540822)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
bool v[2000010];
long s=1,n;
void sundaram()
{int i,j;
for(i=1;i<=(n-1)/2;i++)
if(v[i]==false)
{s++;
for(j=i;i+j+2*i*j<=n;j++)
v[i+j+2*i*j]=true;
}
}
void eratostene()
{int i,j;
for(i=1;i<=(n-1)/2;i++)
if(v[i]==false)
{
s++;
for(j=3*(2*i+1);j<=n;j=j+(2*i+1))
v[(j-1)/2]=true;
}
}
int main()
{ f>>n;
eratostene();
g<<s;
return 0;
}