Pagini recente » Cod sursa (job #684278) | Cod sursa (job #2699062) | Cod sursa (job #739209) | Cod sursa (job #660886) | Cod sursa (job #2375479)
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
int N, nump;
bool sieve[2000001];
void Sieve()
{
nump=1;
int lim=(int)sqrt(N);
for (int i=3;i<=N;i+=2)
{
if (sieve[i])
continue;
nump++;
if (i>lim)
continue;
for (int j=i*i;j<=N;j+=i)
sieve[j]=1;
}
}
int main()
{
ifstream f("ciur.in");
ofstream g("ciur.out");
f>>N;
if (N==2)
g<<1;
else
{
Sieve();
g<<nump;
}
}