Cod sursa(job #2766656)

Utilizator AdvisorySamachis Andrei Advisory Data 2 august 2021 17:49:33
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream fin("ciur.in");
ofstream fout("ciur.out");

bool v[2000001];

int main() {
    bool prim;
    int n, i, j, nr = 2, raspuns = 0;
    fin >> n;
    if(n < 2)
        fout << 0;
    else {
        v[1] = true; // daca e prim => false
        v[0] = true;
        for(i = 2; i <= n; ++i) {
            if(!v[i]) {
                ++raspuns;
                for(j = i * 2; j <= n; j += i) {
                    v[j] = true;
                }
            }
        }
    }

    fout << raspuns;

    return 0;
}
/*

 n = 10;
 out = 4?

 2 3 5  7  11  13  17  19  23  29
 4 6 10 14 22  26  34  38  46  58

 */