Cod sursa(job #883508)

Utilizator BogdacutuSeniuc Bogdan Bogdacutu Data 20 februarie 2013 08:24:48
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <iostream>
#include <fstream>

using namespace std;

//#define CONSOLE

int main() {
    unsigned long int n, i, j, c = 1;
    #ifdef CONSOLE
        cin>>n;
    #else
        ifstream fin("ciur.in");
        ofstream fout("ciur.out");
        fin>>n;
    #endif
    unsigned char numere[n+1];
    for (i = 0; i <= n+1; i++) numere[i] = 0;
    for (i = 3; i <= n; i = i + 2) {
        if (numere[i] == 0) {
            c++;
            for (j = i*i; j <= n; j = j+i) {
                numere[j] = 1;
            }
        }
    }
    #ifdef CONSOLE
        cout<<c;
    #else
        fout<<c;
    #endif
    return 0;
}