Cod sursa(job #2120119)

Utilizator roxannemafteiuMafteiu-Scai Roxana roxannemafteiu Data 1 februarie 2018 22:05:57
Problema Ciurul lui Eratosthenes Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include <fstream>
#include <iostream>
 
using namespace std;
 
int upperBound, numberOfPrimeValues;
bool numbers[2000001];
 
void readUpperBound()
{
    ifstream fin("ciur.in");
 
    fin >> upperBound;
 
    fin.close();
}
 
int sieveOfEratosthenes()
{
    numberOfPrimeValues++;
 
    for(int i = 3; i <= upperBound; i += 2)
    {
        if(!numbers[i])
        {
            numberOfPrimeValues++;
 
            for(int j = i * 2; j <= upperBound; j += i)
                numbers[j] = true;
        }
    }
 
    return numberOfPrimeValues;
}
 
void printSolution()
{
    ofstream fout("ciur.out");
 
    fout << sieveOfEratosthenes();
 
    fout.close();
}
 
int main()
{
    readUpperBound();
    printSolution();
 
    return 0;
}