Cod sursa(job #2233417)

Utilizator gabrielxCojocaru Gabriel-Codrin gabrielx Data 23 august 2018 11:22:49
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>

using namespace std;

ifstream cin ("ciur.in");
ofstream cout ("ciur.out");

bool viz[2000001];

int main() {
    int n;
    cin >> n;
    int numberOfPrimes = n - 1;
    
    for (int i = 2; i <= n; ++i) {
        if (viz[i] == false) {
            int prime = i, count = 2;
            
            while (prime * count <= n) {
                if (viz[prime * count] == false) {
                    viz[prime * count] = true;
                    numberOfPrimes--;
                }
                
                count++;    
            }
            
            viz[i] = true;   
        }
    }
    
    cout << numberOfPrimes;
}