Cod sursa(job #842223)

Utilizator Stefanescu_MihaiStefanescu Mihai-Nicolae Stefanescu_Mihai Data 26 decembrie 2012 14:49:35
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda 23zile_1 Marime 0.41 kb
#include<fstream>
#include<math.h>
using namespace std;
unsigned char a[2000003];
int main()
{
    unsigned int k,m,y,i;
    double n,ac;
    ifstream f1("ciur.in");
    f1>>n;k=n;
    m=n-n/2;
    if (k%2) m++; 
    ac=sqrt(n);
    for (y=3;y<=ac;y=y+2)
        if (!a[y])
            for (i=3*y;i<=n;i+=2*y) if ((!a[i])||(!i%2)) {a[i]=1; m--;}
    ofstream f2("ciur.out");
    f2<<m;
    return 0;
}