Pagini recente » Profil mihaipriboi | Profil Adriana_S | Cod sursa (job #188906) | Cod sursa (job #1685554) | Cod sursa (job #1346005)
#include <fstream>
#include <cmath>
using namespace std;
ifstream is("ciur.in");
ofstream os("ciur.out");
int N, nrPrime;
bool notPrime[2000001]; // daca notPrime[x] este fals atunci x este prim
void Sieve();
int main()
{
is >> N;
Sieve();
os << nrPrime;
is.close();
os.close();
}
void Sieve()
{
for ( int i = 2; i <= N; ++i )
{
if ( !notPrime[i] )
{
nrPrime++;
for ( int j = 2 * i; j <= N; j += i )
notPrime[j] = true;
}
}
}