Cod sursa(job #1861147)

Utilizator shantih1Alex S Hill shantih1 Data 28 ianuarie 2017 17:10:28
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>
#include <iostream>
using namespace std;

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

int n, i, j, nr;

int main() {

    fin>>n;
    int v[n+1];
    for (i=2; i<=n; i++)    v[i]=i;
    
    for (i=2; i<=n; i++)
    {
        if (v[i]!=0 && i*i<=n)
        {
            for (j=i*2; j<=n; j+=i)   v[j]=0;
            //for (j=2; j<=n; j++)    fout << v[j] << " ";
            //fout << "\n";
            nr++;
        }
        if (i*i>n && v[i]!=0)   nr++;
    }
    fout << nr << "\n";
}