Cod sursa(job #1214826)

Utilizator Popi1Popescu Tudor-Dimitrie Popi1 Data 31 iulie 2014 15:35:45
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;

const int MAXN = 2100000;

bool a[MAXN];

int main() {
    ifstream fi("ciur.in");
    ofstream fo("ciur.out");
    int n, s=1, i,j;
    fi>>n;
    int sqr=sqrt(n);
    for(i = 3;i <= sqr; i= i+2)
    {
        for(j = i + i; j <= n; j += i)
        {
            if(a[j]==0)
                a[j]=1;
        }
    }

    for(i=3;i<= n; i=i+2)
    {
        if(a[i]==0)
            s++;
    }
    fo<<s;
    return 0;
}