Cod sursa(job #1436114)

Utilizator alittlezzCazaciuc Valentin alittlezz Data 15 mai 2015 09:24:54
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <fstream>

using namespace std;
#define nMax 2000005

bool ciur[nMax];

int sieve(int n){
    int i,j,c;
    for(i=4;i<=n;i=i+2){
        ciur[i] = 1;
    }
    c = 0;
    for(i=3;i<=n;i=i+2){
        if(ciur[i] == 0){
            c++;
            for(j=i*i;j<=n;j=j+i+i){
                ciur[j] = 1;
            }
        }
    }
    return (c+1);
}

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