Cod sursa(job #1846878)

Utilizator razvan171514Razvan Mihai razvan171514 Data 14 ianuarie 2017 08:38:50
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.86 kb
/*#include <fstream>
#include <math.h>
using namespace std;
bool prim (int n)
{
    int p;
    p=sqrt(n);
    for (int i=4;i<=p;i++)
    {
        if (n%i==0)
            return false;
    }
    return true;
}
int v[10000];
int main()
{
    ifstream fin ("ciur.in");
    ofstream fout ("ciur.out");
    int n,j=0;
    fin>>n;
    for (int i=2;i<=n;i++)
    {
        if (prim(i))
            j++;
        if (i>=3)
            i++;
    }
    fout<<j;
    return 0;
}*/
#include <fstream>

using namespace std;
int n, sol;
bool v[2000010];
int main()
{
    ifstream fin("ciur.in");
    ofstream fout("ciur.out");
    fin>>n;
    for(int i=2; i<=n; i++)
    {
        if(v[i]==false)
        {
            sol++;
            for(int j=i*2; j<=n; j+=i)
                v[j]=true;
        }
    }
    fout<<sol;

    return 0;
}