Cod sursa(job #2034317)
Utilizator | Data | 7 octombrie 2017 18:23:22 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.39 kb |
#include <fstream>
#include <math.h>
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
bool v[2000001];
int main()
{
unsigned int N,i,j,s;
f>>N;
int x=sqrt(N);
for(i=4;i<=N;i+=2)
v[i]=1;
for(i=3;i<=x;i+=2)
for(j=i*i;j<=N;j+=2*i)
v[j]=i;
for(s=0,i=2;i<=N;i++)
if(!v[i])
s++;
g<<s;
}