Cod sursa(job #2429640)

Utilizator mariasmmskklns mariasmm Data 10 iunie 2019 17:24:40
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <iostream>
#include <fstream>
#define NMax 1000001
bool prim[NMax];
using namespace std;

int ciur(int n)
{
    int nrPrime=1;
    for (unsigned int j=3; 2*j<=n; j+=2)
        for (unsigned int i=3; i*j<=n; i+=2)   //0=3   1=5   2=7   3=9  4=11 5=13 6 =15 7=17 8=19 2i+3
                prim[i*j/2-1]=true;
    for (int i=0; i<=n/2-2; i++)
        if (prim [i]==false)
            nrPrime++;

    return nrPrime;
}

int main()
{
    int n;
    {
        ifstream f("ciur.in");
        f>>n;
    }
    {
        ofstream g("ciur.out");
        g<<ciur(n);
    }
    return 0;
}