Cod sursa(job #634253)

Utilizator yamahaFMI Maria Stoica yamaha Data 15 noiembrie 2011 21:24:33
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <iostream>
#include <fstream>

using namespace std;

#define maxsize 2000000

char v[maxsize];
int n,nr;

void ciur() 
{
    int i, j;
    for (i = 4; i <= n; i += 2)
        v[i] = 1;
    for (i = 3; i <= n; i += 2) 
        if (!v[i])
            for (j = i * i; j <= n; j += i + i) v[j] = 1;
}

int main (void)
{
    ifstream f("ciur.in");
    ofstream g("ciur.out");
    f>>n;
    f.close();
    
    ciur();
    for(int i=2;i<=n;i++) if(!v[i]) nr++;
    g<<nr;
    
    g.close();
    return 0;
}