Cod sursa(job #2658340)

Utilizator damiantudorDamian Tudor Christian damiantudor Data 13 octombrie 2020 19:31:43
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;

ifstream f("ciur.in");
ofstream g("ciur.out");

bool a[2000001];
int nr,n,i,k;

int main()
{
    f >> n;

    for(i=2;i<=(sqrt(n));i++)
        if(a[i]==0)
            for(int j=i;j<=(n/i);j++)
                a[i*j]=1;

    /* while(k<=n)
    {
        for(i=2;i<=n/k;i++)
            a[i*k]=1;
        k++;
    } */
    a[1]=1;

    for(i=2;i<=n;i++)
    {
        if(a[i]==0)
        {
            nr++;
        }
    }
    g << nr;
    return 0;
}