Cod sursa(job #1452555)

Utilizator refugiatBoni Daniel Stefan refugiat Data 21 iunie 2015 12:33:17
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<cstdio>
#include<iostream>
#include<fstream>
#include<stack>
#include<bitset>
#include<list>
using namespace std;
bitset<2000005> er;
int erat(int n)
{
    int cont=1,j,k,i;
    for(i=3;i<n;i+=2)
    {
        if(er[i]==0)
        {
            ++cont;
            k=i*2;
            for(j=i*3;j<n;j+=k)
                er[j]=1;
        }
    }
    return cont;
}
int main()
{
    //ifstream si;
    //si.open("gardul.in");
    FILE* si=fopen("ciur.in","r");
    //FILE* so=fopen("ordine.out","w");
    ofstream so;
    so.open("ciur.out");
    int n;
    fscanf(si,"%i",&n);
    so<<erat(n+1)<<'\n';
}