Cod sursa(job #1871842)

Utilizator lessanleonard savu lessan Data 7 februarie 2017 18:12:32
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <stdio.h>
using namespace std;
bool ciur[2000001];
int n,i,cnt;
int main()
{
    freopen("ciur.in","r",stdin);
    freopen("ciur.out","w",stdout);
    scanf("%d",&n);
    for(i=3; i*i<=n; i+=2)
    {
        if(ciur[i] == 0)
        {
        cnt = 0;
            while((i*i+cnt*i)<=n)
            {
                ciur[i*i+cnt*i]=1;
                cnt++;
            }
        }
    }
    cnt=1;
    for(i=3; i<=n; i+=2)
        if(ciur[i]==0)
            cnt++;
    printf("%d",cnt);
    return 0;
}