Cod sursa(job #2403833)

Utilizator florinel2102florin pricopie florinel2102 Data 11 aprilie 2019 21:54:18
Problema Ciurul lui Eratosthenes Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <bits/stdc++.h>
using namespace std;

#define IN "ciur.in"
#define OUT "ciur.out"

int main()
{
    ifstream fin(IN);
    ofstream fout(OUT);
    int N;

    fin>>N; //am citit numarul
    int A[N+1]; //am intializat vecto

    for(int i=2;i<=N;++i) A[i]=0; //bag toate numerele de la 0pana la n inclusiv in ciur
    int nc=0;
    for(int i=2;i<N;++i)
    {
        if(A[i] == 0)
        {
            ++nc;
            int p=2;
            while(i*p<=N)
            {
                A[i*p] = 1;
                ++p;
            }
        }
    }
    fout<<nc;
    return 0;
}